TC官方合作论坛

 找回密码
 立即注册
查看: 1065|回复: 4

[已解决] 多线程问题.

[复制链接]
发表于 2015-9-13 15:53:47 | 显示全部楼层 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 foxtail 于 2015-9-13 15:57 编辑
  1. 变量 主线程句柄=0,是否暂停线程=假,循环开关=真,计数=0

  2. //-----------线程开启-----------//
  3. 功能 热键0_热键()
  4.     如果(主线程句柄==0)
  5.         主线程句柄 = 线程开启("主线任务","")
  6.         是否暂停线程 = 假
  7.         //调试输出(线程ID)
  8.     否则
  9.         调试输出("线程已经开启了,无需再启动")
  10.     结束
  11. 结束

  12. //-------暂停/恢复线程------//
  13. 功能 热键1_热键()
  14.     如果(是否暂停线程==假)
  15.         线程暂停(主线程句柄)
  16.         是否暂停线程 = 真        //重新赋值为真,意思是线程已经在暂停状态
  17.     否则
  18.         //如果 "是否暂停线程==假"不成立,那就为真.相当于线程在暂停状态.
  19.         //需要做恢复线程操作
  20.         线程恢复(主线程句柄)
  21.         是否暂停线程 = 假
  22.     结束
  23. 结束
  24. //-------停止线程------//
  25. 功能 热键2_热键()
  26.     //这里添加你要执行的代码
  27.     如果(主线程句柄!=0)
  28.         循环开关=假
  29.         
  30.         计数=0
  31.         主线程句柄=0
  32.         线程关闭(主线程句柄)
  33.         调试输出("线程停止........")
  34.     结束
  35. 结束

  36. 功能 主线任务()
  37.     循环(循环开关)
  38.         计数=计数+1
  39.         遍历(变量 i = 0; i < 5; i++)
  40.             等待(100)
  41.         结束
  42.         调试输出("计数执行了:" & 计数 & "次")
  43.     结束
  44. 结束

复制代码

1.界面有3个热键: 启动(F10) 暂停恢复(F11) 停止(END)2.TC版本:5.4

问题:第一次开启线程,它会执行循环.并且死循环打印计数信息.然后我按END键停止关闭线程后.线程关闭. 再次F10开启线程时.无任何反应.就是代码里面的 "功能 主线任务()" 不执行.


是什么问题呢???请教请教~
回复

使用道具 举报

发表于 2015-9-13 16:14:04 | 显示全部楼层
//-----------线程开启-----------//
功能 热键0_热键()
    如果(主线程句柄==0)
        循环开关 = 真
        主线程句柄 = 线程开启("主线任务","")
        是否暂停线程 = 假
        //调试输出(线程ID)
    否则
        调试输出("线程已经开启了,无需再启动")
    结束
结束
1.在启动脚本时 把循环开关赋值为 真
//-------停止线程------//
功能 热键2_热键()
    //这里添加你要执行的代码
    如果(主线程句柄!=0)
        循环开关=假
        
        计数=0
        
        线程关闭(主线程句柄)
        主线程句柄=0
        调试输出("线程停止........")
    结束
结束
2.在停止脚本时,关闭线程后,再将主线程句柄赋值为0
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-9-13 16:03:08 | 显示全部楼层
难道同一函数,执行了一次并停止之后.再也不能执行相同函数的线程了?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-9-13 16:16:16 | 显示全部楼层
已解决.逻辑问题...{:soso_e117:}
回复 支持 反对

使用道具 举报

发表于 2015-9-13 17:05:05 | 显示全部楼层
蓝丝雨 发表于 2015-9-13 16:14
//-----------线程开启-----------//
功能 热键0_热键()
    如果(主线程句柄==0)

官方合作学院的也来跟你学了。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-10-2 15:04 , Processed in 0.031610 second(s), 23 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表