# #Persistent

让脚本持续运行(即, 直到用户关闭或遇到 ExitApp).

    #Persistent

如果在脚本的任意位置使用此指令, 那么脚本会在启动 完成并且所有其他线程退出之后继续保持运行. 这通常不是必要的, 因为当程序检测到脚本具有某种启动新线程的方式(例如 热键, 计时器或 GUI) 时, 脚本会自动持续运行.

在某些情况下可能需要此指令(如果没有正在运行的线程或热键, 计时器, 等.) 包括:

- 使用 CallbackCreate 和 DllCall 响应事件的脚本, 因为这些函数不会使脚本持续运行.
- 创建或检索 COM 对象并使用 ComObjConnect 响应对象事件的脚本.

如果将此指令添加到现有脚本中, 则可能需要将部分或全部出现的 Exit 更改为 ExitApp. 这是因为 Exit 不会终止持续运行的脚本; 它仅终止当前线程.

和其他指令一样, #Persistent 不能有条件地执行.

## 相关

Exit, ExitApp

## 示例

使脚本永久运行; 也就是说, 如果可以的话, 它不会自动退出.

    ; 这个脚本不会自动退出, 即使它没有任何事情要做.
    ; 但是, 你可以使用它的托盘图标在编辑器中打开脚本
    ; 或启动 Window Spy 或帮助文件.
    #Persistent

dftg