马上加入TC
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
[问题] TC有线程结束 事件吗?
楼主 似此星辰非昨夜
如题,想在线程结束的时候自动触发一些命令,比如释放大漠对象、解绑窗口等。如果没有的话,大家都是怎么解决的?
回复
沙发 来不及的来得及 发消息
线程最后面不就是么
回复
板凳 cjxdn 发消息
在功能最后面加不就行了吗
回复
6# 似此星辰非昨夜 发 消息
引用: cjxdn 发表于 2016-4-22 23:08
变量 线程ID
不行的
如果这个线程是被其他线程结束的呢?意外终止是不会执行到最后。
回复
7# cjxdn 发消息
变量 句柄=线程开启("threadfunction","")
变量 state=线程获取状态(句柄)
线程状态不是开启的,就进行 释放大漠对象、解绑窗口。
回复
10# 言术 发消息
我来说下思路:
1)如果线程可以自己结束,只需要在最后添加即可
2)如果线程是死循环或想提前结束,你需要手动打断它吧(比如按某键),在这里添加你想执行的
回复
10#的方法很赞。估计楼主说的,,是下面这个方法。
TC 简单开发:多窗口_多开单停。
没有学过对象和类的新手,认为创造出来的大漠对象,只能这样写:
dm.UnBindWindow()
不曾知道创造的大漠对象可以这样写:
dm0.UnBindWindow()
var 线程ID0, dm0 //定义全局变量。
dm0 = com("dm.dmsoft")//创造大漠对象。
var path = 获取资源路径("rc:")
var ret = dm0.SetPath(path) //把TC的资源路径,设为大漠的全局路径。
这里有个小技巧。创造多个对象,多窗口还可以多开单停。
var 线程ID0, 线程ID1, 线程ID2, 线程ID3
var dm0,dm1,dm2,dm3 //定义四个全局变量。
dm0 = com("dm.dmsoft")//创造大漠对象。
dm1 = com("dm.dmsoft")//创造大漠对象。
dm2 = com("dm.dmsoft")//创造大漠对象。
dm3 = com("dm.dmsoft")//创造大漠对象。
function 停止0_热键()
线程关闭(线程ID0)
dm0.UnBindWindow()
end
function 停止1_热键()
线程关闭(线程ID1)
dm1.UnBindWindow()
end
|