暂停脚本的 current thread(当前线程) 。
Pause [, On|Off|Toggle, OperateOnUnderlyingThread?]
On|Off|Toggle |
如果留空或省略,它默认为 Toggle 。否则,指定为下列一个单词: Toggle: 暂停 current thread 除非它下面的线程已经暂停,这种情况下将反暂停下面的线程。 On: 暂停当前线程。 Off: 如果当前线程下面的线程已经暂停,当它恢复时将成为一种反暂停状态。反之,命令无效。 |
OperateOnUnderlyingThread? |
此参数被 "Pause Off" 忽略。对上面参数的其他两种而言,它也被忽略除非暂停已经被开启(包括凭借 Toggle 开启的)。 指定下面的一个数字: 0 (或者省略): 命令暂停当前线程;也就是,正在运行暂定命令的线程。 1: 命令标记当前线程下面的线程为暂定,以便当它恢复时,完成它运行的命令(如果有的话)并且之后进入一个暂停状态。如果当前线程下面没有线程,脚本自己会暂停,这将阻止 timers 运行(当脚本没有线程时,这个效果和使用了菜单项 "Pause Script" 一样)。 |
和 Suspend 不同 -- 它禁用了 hotkeys 和 hotstrings -- pause 将冻结 current thread 。作为一个副作用,任何当前线程下面被中断的线程也将潜伏着。
在任何线程被暂停时,timers 也不会运行。相比之下,明确地启动的线程例如 hotkeys 和 menu items 仍能被运行;但当它们的 threads 结束时,下面的线程仍将被暂停。换言之,每个独立于其他的线程能被暂停。
当脚本的 current thread
处于一个暂停状态时,托盘图标的颜色从绿色转为红色。这个颜色的改变能够通过冻结图标来避免,其通过为 Menu 命令的最后一个参数指定 1
来获得。例如:
Menu, Tray, Icon, C:\My Icon.ico, , 1
要禁用 timers 而不暂停脚本,使用 "Thread, NoTimers" 。
Pause 命令在功能上和内置菜单项 "Pause Script" 相似。
当一个脚本显示任何种类的 menu (tray menu, menu bar, GUI context menu 等等) 时,它总会停住(虽然不是正式地暂停)。
Suspend, Menu, ExitApp, Threads, SetTimer
Pause::Pause ; 给 "pause" 键指定暂停切换功能... #p::Pause ; ... 或为 Win+p 或者其他一些热键指定此功能。