TC官方合作论坛

标题: 如何让线程在适合时机关闭 [打印本页]

作者: dbsx    时间: 2014-8-28 08:22
标题: 如何让线程在适合时机关闭
我希望在线程执行的功能执行完成后,再把该线程关闭,好释放资源,本来以为直接在开启后面接一个关闭即可,但不行,所以我写成这样,加了个判断,如果功能执行完成,最后线程==1,之后在关闭线程,不过这样一来程序又卡死了。那该怎么做呢?
--
功能 登陆_点击()
    线程句柄=0
    线程句柄 = 线程.开启("办公专用.登陆","")
    调试输出("登陆线程进行中")
    循环(线程完成==0)
        辅助.等待(1000)
    循环结束
    线程.关闭(线程句柄,0)
    线程完成=0
    调试输出("登陆线程已关闭")
功能结束


作者: 续花丶    时间: 2014-8-28 08:57
  1. 循环(线程.获取线程状态(线程句柄))
  2.     //运行中 就循环等待
  3.     辅助.等待(1000)
  4. 循环结束//线程结束就不循环了   继续执行下面的代码!
复制代码

作者: dbsx    时间: 2014-8-28 09:18
续花丶 发表于 2014-8-28 08:57

还是卡死了。。。。。
作者: 续花丶    时间: 2014-8-28 09:28
dbsx 发表于 2014-8-28 09:18
还是卡死了。。。。。

-  -自己用线程啊.
作者: jimye0526    时间: 2014-8-28 09:52
线程内代码执行完就自动关闭了的额
作者: 260806542    时间: 2014-8-28 10:35
代码块放在按钮点击操作里面当然会卡死   重新开个线程   按钮点击开启线程
作者: 610761555    时间: 2014-8-28 15:48
//写个全局变量,这个变量传递好就没问题
变量 完成任务

//例如任务做完了,标记一下告诉监控线程
完成任务=真

//开一个线程作监控,达到自动关闭完成任务的线程
//遍历每一个线程,判断完成任务是否为真




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