运行 脚本文件中的每个热键都在一个单独的线程中(每个热键的最大线程数 = 1)
Run each hotkey in a script file in a separate thread (with max threads per hotkey = 1)
我有一个带有 3 个热键的 .ahk
脚本文件。
每个热键都需要几秒钟才能完成。
当我 运行 热键 a
然后在 a
完成之前热键 b
时发生的事情是 a
被中断并且脚本继续b
.
基本上我想要 a
和 b
到 运行 同时。
我能做到吗?
AutoHotkey 中(尚)不存在单个脚本中的真正多线程。
虽然有一些方法可以尝试创建“假”多线程,但目前最好的解决方案是使用 Run
命令让每个热键 运行 拥有自己单独的 ahk 脚本文件。
希望这对您有所帮助;如果您想了解此类代码的示例,lmk 和我可以继续创建一个。
当我需要同时运行两个函数时,我制作了多个相互交互的脚本。不幸的是,Autohotkey 不支持多线程,所以这是唯一的方法。
一些想法:
您可以使用 msgbox and/or GUI 在脚本之间传递变量。
如果您需要一个函数,您也可以使用 msgbox 作为“等到”
等待对方完成一部分自动化。
我有时用它来制作两个脚本“播放标签”以利用所有
网站加载期间存在的停机时间。其他
换句话说,我制作了两个与不同网站交互的机器人......
在另一个等待其页面加载时自动化一个。
我还使用了“控制面板”类型的设置
通过 GUI 控制子程序(其他脚本)的主脚本。你
然后可以使用按钮触发 运行 命令并提供 kill
每个子程序的按钮。这会给它一个完整的感觉
应用程序,如果你通过控件发送到一个隐藏的 gui 来完成这一切。这
然后主脚本可以跟踪所有需要的变量
像我之前提到的那样在子程序与 msgbox 之间进行交换。
但我认为那时你可能只想合并另一个
更强大的语言,如 python 或 Java.
我有一个带有 3 个热键的 .ahk
脚本文件。
每个热键都需要几秒钟才能完成。
当我 运行 热键 a
然后在 a
完成之前热键 b
时发生的事情是 a
被中断并且脚本继续b
.
基本上我想要 a
和 b
到 运行 同时。
我能做到吗?
AutoHotkey 中(尚)不存在单个脚本中的真正多线程。
虽然有一些方法可以尝试创建“假”多线程,但目前最好的解决方案是使用 Run
命令让每个热键 运行 拥有自己单独的 ahk 脚本文件。
希望这对您有所帮助;如果您想了解此类代码的示例,lmk 和我可以继续创建一个。
当我需要同时运行两个函数时,我制作了多个相互交互的脚本。不幸的是,Autohotkey 不支持多线程,所以这是唯一的方法。
一些想法:
您可以使用 msgbox and/or GUI 在脚本之间传递变量。
如果您需要一个函数,您也可以使用 msgbox 作为“等到” 等待对方完成一部分自动化。
我有时用它来制作两个脚本“播放标签”以利用所有 网站加载期间存在的停机时间。其他 换句话说,我制作了两个与不同网站交互的机器人...... 在另一个等待其页面加载时自动化一个。
我还使用了“控制面板”类型的设置 通过 GUI 控制子程序(其他脚本)的主脚本。你 然后可以使用按钮触发 运行 命令并提供 kill 每个子程序的按钮。这会给它一个完整的感觉 应用程序,如果你通过控件发送到一个隐藏的 gui 来完成这一切。这 然后主脚本可以跟踪所有需要的变量 像我之前提到的那样在子程序与 msgbox 之间进行交换。 但我认为那时你可能只想合并另一个 更强大的语言,如 python 或 Java.