问题1、如何检测一个线程是否存在?若存在如何释放掉我在线程的execute中代码用
while not terminate do
begin
//freeOnTerminated := false; //加不加该句无关
end;如何释放?
while not terminate do
begin
//freeOnTerminated := false; //加不加该句无关
end;如何释放?
解决方案 »
- opendialog打开多个文件时,为什么opendialog.files.strings[0]是选择的最后一个文件啊?
- 急...利用RegExpr 提起 html中数据问题
- 看看我的代码那错了?
- 用Delphi编写CGI程序,哪位大侠能给个简单的例子来参考
- 在线等待 20分 delphi7.0中 怎么安装mwedit 0.92a 第三方控件啊
- 连接数据库,有源码! 在线等
- 哪里有DBGridEh For D6下载(带源码)?
- nmhttp还有什么bug?????
- 请教高手,mideaplayer控件放视频信息很奇怪的问题!!!
- 高分求救!!!请问怎样获得TAdoQuery 的表名。。。急。。。高手讲请
- 帮帮兄弟
- 在delphi中如何获取所有已运行程序的名称和该程序的窗口标题
while not terminate do
begin
。。
end;
时,FreeOnTerminated=true 有时在同步方面存在问题
我一般这么来 FreeOnTerminated:=false;
结束时
aaaa.Terminate;
aaaa.WaitFor; //保证线程执行完毕,已经退出了Execute过程
aaaa.Free;
我在线程的execute中代码用
while not terminate do
begin
//freeOnTerminated := false; //该句未用
end;
在主程序中用
FreeAndNil(rThread);
线程可以终止,再重新创建该同名线程不会有问题,但在WINXP系统就不可以
谁知道什么原因啊??