SET REPROCESS 命 令

指
定 一 次 锁 定 尝 试 不 成 功 后 Visual FoxPro 对 文 件 或 记 录 再 次
尝 试 加 锁 的 次 数 或时 间
语 法
SET REPROCESS TO nAttempts [SECONDS] | TO AUTOMATIC
参 数 描 述
TO nAttempts [SECONDS]


指
定 初 始 加 锁 不 成 功 后 Visual FoxPro 对 文 件 或 记 录 再 次 尝 试
加 锁 的 次 数默 认 值 为 0 最 大 值 为 32,000
SECONDS 指 定 Visual FoxPro 对 文 件 或 记 录 尝 试 加 锁 的 时 间 为 nAttempts

秒
只 有 当 nAttempts 大 于 0 时 此 设 置 才 可 用




例
如 如 果 nAttempts 为 30 V isual FoxPro 对 记 录 或 文 件 的 尝 试
加 锁 次 数为 30 次 如 果 还 包 括 SECONDS ( SET
REPROCESS TO 30 SECONDS )
则 V isual FoxPro 持 续 地 对 文 件 或 记 录 尝 试 加 锁 的 时 间 是
30 秒





如
果 SET STATUS 设 置 为 ON 则 出 现 系 统 信 息 等 待 锁 定 ...






如
果 O N ERROR 例 程 有 效 并 且 一 条 命 令 对 文 件 或 记 录 加 锁 的
尝 试 不 成功 那 么 将 执 行 O N ERROR 例 程 但 如 果 是 一 个 函 数
尝 试 加 锁 那 么 将 不执 行 O N ERROR 例 程 且 该 函 数 返 回 假
(.F.)












如
果 O N ERROR 无 效 且 命 令 试 图 对 文 件 或 记 录 加 锁 但 未 成 功
时 将 出现 相 应 的 警 告 信 息 例 如 其 他 用 户 正 在 使 用 该 记 录
如 果 函 数 的 加锁 尝 试 不 成 功 则 不 显 示 警 告 信 息 而 是 由 函
数 返 回 假 (.F.)















如
果 在 nAttempts 为 0 默 认 值 时 发 出 命 令 或 使 用 函 数 来 尝 试
锁 定 记 录或 文 件 那 么 Visual FoxPro 将 无 限 制 地 尝 试 锁 定 记
录 或 文 件 在 尝 试 锁 定记 录 或 文 件 时 V isual FoxPro 显 示 系 统
信 息 尝 试 锁 定 ... 按 ESC 键 取 消等 待 过 程 中 如 果 记 录 或 文
件 可 以 加 锁 时 则 锁 定 该 记 录 或 文 件 并 清 除 显 示的 系 统 信
息 一 个 函 数 尝 试 加 锁 成 功 时 该 函 数 返 回 真 (.T.)










如
果 按 ESC 键 响 应 系 统 信 息 则 出 现 相 应 的 警 告 信 息 例 如 记
录 正 被 其他 用 户 使 用
如 果 是 一 个 函 数 尝 试 加 锁 则 不 出 现 此 类 信 息 而 由 函 数
|
返 回 |
假 |
(.F.) |
||
|---|---|---|---|---|
|
如 果 |
O N |
ERROR |
例 程 有 效 且 一 条 命 令 正 在 对 文 件 或 记 录 尝 试 加 锁 |
则 O N |


ERROR
优 先 于 对 记 录 或 文 件 再 次 的 加 锁 尝 试 这 种 情 况 下 ON
ERROR 例


程
立 即 执 行 V isual FoxPro 不 再 尝 试 对 文 件 或 记 录 进 行 加 锁
也 不 显 示 系 统信 息



如
果 nAttempts 为 – 1 V isual FoxPro 将 无 限 制 地 尝 试 锁 定 记 录
或 文 件 这时 即 使 按 ESC 键 也 不 能 取 消 加 锁 尝 试 并 且 不 执
行 O N ERROR 例 程



只
有 当 SET STATUS 设 置 为 O N 时 V isual FoxPro 才 显 示 等 待 锁定
...

如
果 尝 试 锁 定 的 记 录 或 文 件 已 被 其 他 用 户 加 锁 那 么 只 有
等 到 该 用 户 解 锁 后才 能 加 锁
TO AUTOMATIC



指
定 Visual FoxPro 无 限 制 地 尝 试 锁 定 记 录 或 文 件 Setting n
Attempts to – 2 与此 命 令 等 价 在 没 有 退 出 尝 试 锁 定 记 录 或
文 件 时 该 语 句 与 nAttempts to
– 1
相 近








V
isual FoxPro 在 尝 试 锁 定 记 录 或 文 件 时 显 示 系 统 信 息 尝 试
锁 定 ... 按 ESC 键 取 消 如 果 要 加 锁 的 记 录 或 文 件 可 用 就 加
上 锁 并 清 除 显 示 的 系 统 信 息如 果 使 用 函 数 来 加 锁 函 数 返
回 真 ( .T .)










如
果 O N ERROR 例 程 无 效 且 按 ESC 键 来 响 应 系 统 信 息 则 出 现 相
应 的 警告 信 息 例 如 其 他 用 户 正 在 使 用 该 记 录
这 种 情 况 下 如 果 函 数 尝 试加 锁 不 成 功 将 不 显 示 警 告 信 息
而 由 函 数 返 回 假 (.F.)

如
果 O N ERROR 例 程 有 效 且 按 下 了 ESC 键 则 执 行 O N ERROR 例 程










如
果 是 函 数 尝 试 加 锁 则 不 执 行 O N ERROR 例 程 而 且 函 数 返 回
假 (.F.) 有 关 锁 定 文 件 或 记 录 以 及 在 网 络 中 共 享 表 的 其
它 信 息 请 参 阅 M icrosoft Visual FoxPro 6.0 中 文 版 程 序 员 指 南
的 第 十 七 章 的 共 享 数 据 库 程 序
说 明






第一次对记录或文件尝试加锁不可能总成功
在网络上 记录或文件经常被其他用户锁定 SET REPROCESS
确定初始加锁尝试不成功时 Visual FoxPro 是否继续尝试锁定记录或文件
既可指定继续尝试加锁的次数 也可指定继续尝试加锁的时间限制ON ERROR
例程影响如何处理不成功的加锁尝试
SET
REPROCESS 的作用范围是当前数据工作期
请 参 阅
FLOCK ( ) , SET DATASESSION
