按键精灵 大漠多线程 重复调用子程序 问题

按键精灵 大漠多线程 重复调用子程序 问题,第1张

问题就出在这句

启动线程2 = BeginThread(XC2)

多线程不应该改变量闹模乎名液悉

应该改码局为

ID2 = BeginThread (XC2)

既然你用到了大漠插件,建议过程这样写:

把你代码去掉多线程BeginThread 按键()这句

把子程序移上第一句,把脚本作一个子程序处理。陵巧然后修改各语句为大漠格式

注册大漠、获取各个窗口句柄、利用大漠后台绑定各个窗口运行子尺谈键程侍消序

使用pthread库执行多线程,这个是Linux下的线程库 Windows下应该有自己的API,不过这种东西一般还是以Linux为标准。pthread_create()创建一个线程,传入fun()的函数指针就行了。

然后这个Beep()的需求要进行线程间通信,可以滚慧用共享内存的方法,设一个bool变量flag共享,然后beep的时候大行答设为false,beep完设成true。fun()里面每次看一下这个带升flag,是false的话就不做动作等下一秒,基本可以满足需求。

这样做的好处是实现简单,但时间是以1s为单位的。如果要8秒结束立刻执行,需要用条件变量的方法来控制,比较复杂,这样的实现方式一个可以满足需求了。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8252680.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存