TC官方合作论坛

标题: 关于线程关闭。 [打印本页]

作者: dayangyunet    时间: 2014-10-17 20:40
标题: 关于线程关闭。
本帖最后由 dayangyunet 于 2014-10-17 23:13 编辑

各位大大门,小弟写的代码里面现在有个线程关闭的问题。代码这几段
线程句柄是在空间那里定义的变量。
  1. #include"g抓鬼任务.t"
  2. 空间 abc
  3.    变量 线程句柄,i
  4.    i=0
  5.     功能 热键0_热键()
  6.        //这里添加你要执行的代码
  7.          线程句柄=线程.开启("g抓鬼任务.执行抓鬼","")
  8.          返回 真
  9.     功能结束
  10.     功能 热键1_热键()
  11.        //这里添加你要执行的代码
  12.          标签.设置文本("标签12","关闭线程")
  13.          <font color="#ff0000"><b>线程.关闭(线程句柄)</b></font>  //只会执行到这里就不会往下走了。。。。。
  14.          辅助.等待(1000)
  15.          标签.设置文本("标签12","线程已经关闭")
  16.     功能结束
  17. 空间结束

  18. 空间 g抓鬼任务

  19.     功能 执行抓鬼()
  20.      *抓鬼代码*

  21.        下面是一个判断
  22.       如果(i>=5)
  23.         //移动到第一个窗口
  24.           标签.设置文本("标签12","循环结束任务完成")
  25.           辅助.等待(1000)
  26.           dm.MoveTo(104,42)
  27.           辅助.等待(500)
  28.           dm.LeftClick()
  29.           辅助.等待(500)
  30.           标签.设置文本("标签12","马上关闭线程")//111111
  31.           辅助.等待(500)
  32.           abc.热键1_热键()
  33.           辅助.等待(500)
  34.           abc.热键0_热键()
  35.       否则
  36.           i=i+1
  37.       如果结束
  38.    
  39.     功能结束
  40. 空间结束
复制代码




通过热键启动热键0里的代码,做判断后运行到热键1的红字那里他就不运行了。请大大门指教下

作者: glb3699    时间: 2014-10-17 22:23
没看太懂,要不换个思路?
比如在空间中开启一个遍历线程到初始化.
遍历内容为判断标签状态而操作某线程.
而按钮只需要设置标签内容就行了.
比如按钮15点击时设置标签11内容为"暂停"

那么,初始化时开启的遍历线程检测到这个标签11内容为"暂停"时执行以下操作......关闭线程,设置标签11内容为"等待开启".

不知道这样行不行?

另外,直接按钮操作线程也是可以的.比如,在热键0开启线程时可以在下面加个判断,判断内容为你执行的那串寻路代码的功能,在到达指定位置时,关闭线程并返回一个值给上级判断语句.
这样上级判断时就可以直接改写标签内容,效果也是一样的.

没太看懂楼主意思,所以如果答错了大家别笑......
作者: iookk2012    时间: 2014-10-17 22:28
本帖最后由 iookk2012 于 2014-10-17 22:31 编辑

虽然不太明白你的意思~但是还是给出几个方法~~  定义几个全局变量   xx线程句柄=0,关闭线程句柄=0   ,有了这些 初始化为0的值就能判断了 !   线程启动以后 在里面  xx线程句柄=1,  关闭线程函数里关闭以后 全局变量 关闭线程句柄=1,   这样就用如果 xx线程句柄==0或者1 来判断 线程是否在运行 或者关闭  并设置其他线程运行
作者: 落小雨    时间: 2014-10-18 00:47
这。。。不是**么。自己停止自己
作者: 落小雨    时间: 2014-10-18 00:47
落小雨 发表于 2014-10-18 00:47
这。。。不是**么。自己停止自己

自。。。。杀




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1