|
马上加入TC
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
求教下~~~,写了一个程序,里面开了3个线程,这样的写法对不对,然后程序运行时间一长就会有的时候不好用了~3个线程,我是这样的开始,暂停,关闭,结束。
功能 开始_点击()
线程句柄=线程.开启("尝试登陆.来吧","")
检测程序1=线程.开启("尝试登陆.检测1","")
检测程序2=线程.开启("尝试登陆.检测2","")
功能结束
功能 热键0_热键()
线程句柄=线程.开启("尝试登陆.来吧","")
检测程序1=线程.开启("尝试登陆.检测1","")
检测程序2=线程.开启("尝试登陆.检测2","")
功能结束
功能 热键2_热键()
线程.恢复(线程句柄)
线程.恢复(检测程序1)
线程.恢复(检测程序2)
功能结束
功能 热键1_热键()
线程.暂停(线程句柄)
线程.暂停(检测程序1)
线程.暂停(检测程序2)
功能结束
功能 热键3_热键()
线程.关闭(线程句柄)
线程.关闭(检测程序1)
线程.关闭(检测程序2)
功能结束
这样写有没有什么问题,因为有的时候我按设定的热键,线程没有暂停,或者关闭。 这个是第一个问题,
然后第二个问题,3个线程,第一个线程是游戏里面各种操作的程序,第二和第三个线程运行的是检测程序,就会检测游戏有没有掉线,一旦发现掉线就关闭第一个线程,然后按键呼出任务管理器,关闭掉游戏,之后再重新开启第一个线程,比如:
功能 检测1()
循环(真)
辅助.等待(200)
变量 dm_ret1,intX,intY
系统.设置路径(辅助.获取资源路径("C:\\Documents and Settings\\Administrator\\桌面\\自己建的脚本资源\\尝试登陆\\尝试登陆\\资源"))
dm_ret1=dm.FindPic(495,338,542,372,"卡战船.bmp","000000",0.9,0,intX,intY)
如果(dm_ret1>=0)
线程.关闭(线程句柄)
辅助.等待(1000)
键盘.弹起(54)
辅助.等待(1000)
键盘.弹起(96)
辅助.等待(1000)
////开出任务管理器
辅助.等待(3000)
键盘.按下(17)
辅助.等待(1000)
键盘.按下(16)
辅助.等待(1000)
键盘.按下(27)
辅助.等待(700)
键盘.弹起(17)
辅助.等待(700)
键盘.弹起(16)
辅助.等待(700)
键盘.弹起(27)
辅助.等待(1000)
////强制结束1次
键盘.按键(72,1)
辅助.等待(1000)
辅助.等待(1000)
键盘.按键(46,1)
辅助.等待(500)
辅助.等待(1000)
键盘.按键(13,1)
////强制结束2次
辅助.等待(1000)
键盘.按键(72,1)
辅助.等待(1000)
键盘.按键(46,1)
辅助.等待(500)
辅助.等待(1000)
键盘.按键(13,1)
辅助.等待(1000)
键盘.按键(27,1)
辅助.等待(3000)
线程.开启("尝试登陆.来吧","")
如果结束
这样运行程序一段时间,几个小时不一定,会出现程序不好用,比如说上面的程序是线程2的,线程2的程序检测到掉线,会没有响应,或者关掉了线程1,但是没有呼出任务管理器,就开始又开启线程1,又重新开了个游戏。 这个怎么弄呢~~~ 而且程序最开始运行的时候是好用的啊~~~求教下 ~~~ 谢谢 ~~·
|
|