TC官方合作论坛

 找回密码
 立即注册
查看: 641|回复: 6
打印 上一主题 下一主题

[已解决] 如何让线程在适合时机关闭

[复制链接]
跳转到指定楼层
楼主
发表于 2014-8-28 08:22:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上加入TC

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

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

回复

使用道具 举报

7#
发表于 2014-8-28 15:48:59 | 只看该作者
//写个全局变量,这个变量传递好就没问题
变量 完成任务

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

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

使用道具 举报

沙发
发表于 2014-8-28 08:57:29 | 只看该作者
  1. 循环(线程.获取线程状态(线程句柄))
  2.     //运行中 就循环等待
  3.     辅助.等待(1000)
  4. 循环结束//线程结束就不循环了   继续执行下面的代码!
复制代码
回复 支持 反对

使用道具 举报

板凳
 楼主| 发表于 2014-8-28 09:18:11 | 只看该作者

还是卡死了。。。。。
回复 支持 反对

使用道具 举报

地板
发表于 2014-8-28 09:28:08 | 只看该作者
dbsx 发表于 2014-8-28 09:18
还是卡死了。。。。。

-  -自己用线程啊.
回复 支持 反对

使用道具 举报

5#
发表于 2014-8-28 09:52:16 | 只看该作者
线程内代码执行完就自动关闭了的额
回复 支持 反对

使用道具 举报

6#
发表于 2014-8-28 10:35:01 | 只看该作者
代码块放在按钮点击操作里面当然会卡死   重新开个线程   按钮点击开启线程
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

关闭

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

GMT+8, 2025-9-25 18:27 , Processed in 0.180679 second(s), 23 queries .

Powered by 海安天坑软件科技有限公司

© 2001-2013 Comsenz Inc.

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