本帖最后由 zch11230 于 2012-2-25 16:00 编辑
我需要对N多个账号进行操作 写了框架如下的小工具
Func _online只负责登陆账号 操作过程中有少量延时 500左右 _clickSetup只负责点击出设置界面 极少延时 而且理论上可以不要延时 _readinfo负责读取出账号信息并进行对应的操作,有较多延时 可能有3秒左右 三个FUNC互不影响 只有一个判断是否结束程序的变量 $leave需要传递 我试过分开保存为3个脚本文件来同时运行 效果较好 基本上1秒操作一个账号 但我在一个脚本下运行时 就会增加到近2秒一个. 效率下降比较大.
用了论坛里面找的一个多线程示例 没有延时的话还可以 但如果加了sleep延时 程序基本上就没有反映了. 请教一下有什么办法对这种有延时的情况进行多线程操作.
问题暂时没有完美解决 但找到了方向 至少Coproc可以达到效果
While 1
_online()
_clickSetup()
_readinfo()
If $leave = 1 Then
Do
_clickSetup()
_readinfo()
Until Not WinExists($maintitle)
MsgBox (0,"提示","操作完毕")
ExitLoop
EndIf
WEnd
|