SetBatchLines

AutoHotkey

SetBatchLines

设置脚本的执行速度(影响 CPU 使用率)。

SetBatchLines, 20ms
SetBatchLines, LineCount

参数

20ms

(这里的 20ms 只是个例子.) 如果这个值以 ms 结尾, 那么它表示脚本两次休眠之间的时间间隔 (每次休眠 10 ms). 在下面的例子中,脚本会在每次运行 20ms 之后休眠 10ms:SetBatchLines, 20ms

LineCount

两次休眠之间执行脚本的行数. 这个值可以高达 9223372036854775807. 此外, 此模式与前面段落中介绍的 20ms 是互斥的; 即每次只会有其中一个生效.

备注

使用 SetBatchLines -1 让脚本无休眠运行(即让脚本以全速运行)。

默认设置为 10ms,不过在 v1.0.16 之前的版本中默认为 10 (行)。

不论希望脚本快速执行还是希望脚本减少 CPU 占用都推荐使用 "ms" 方法. 例如, 在大多数系统中 10ms 的设置会避免脚本使用超过 50% 的 CPU 时间. 这样既可以让脚本快速运行, 同时也保留了充分的 CPU 资源供其他任务使用, 例如游戏或视频捕获/回放.

内置变量 A_BatchLines 包含了当前的设置.

根据脚本的内容, 脚本的速度还可能会受到下列命令的影响: SetWinDelay, SetControlDelay, SendMode, SetKeyDelay, SetMouseDelaySetDefaultMouseSpeed.

每个新运行的 线程 (例如 热键, 自定义菜单项定时 子程序) 都会以此命令的默认设置开始. 通过在脚本的自动执行段 (脚本的顶部) 使用此命令可以改变这个默认设置.

相关

SetWinDelay, SetControlDelay, SendMode, SetKeyDelay, SetMouseDelay, SetDefaultMouseSpeed, Critical

示例

SetBatchLines, 10ms 
SetBatchLines, 1000