delphi中Thread创建释放问题
用delphi自带的TThread创建线带,在timer中不断的执行Thread:=TTest.Create(False);timer间隔4秒thread中的代码为inh...
用delphi自带的TThread创建线带,
在timer中不断的执行Thread := TTest.Create(False);
timer间隔4秒
thread中的代码为
inherited;
sleep(2000);
这样执行会不会有资源没释放? 展开
在timer中不断的执行Thread := TTest.Create(False);
timer间隔4秒
thread中的代码为
inherited;
sleep(2000);
这样执行会不会有资源没释放? 展开
3个回答
展开全部
你自己在Windows的进程管理器里看线程的数量是在一直增加不
如果一直增加肯定是没有释放
有个变量设置为True的时候会自动释放
我记得Ter开头的
你自己找下吧
如果一直增加肯定是没有释放
有个变量设置为True的时候会自动释放
我记得Ter开头的
你自己找下吧
参考资料: www.ts1987.com
展开全部
补充一下,只需要在线程的Create事件中加入一行代码..
Terminated:= True;
就能在线程终止的时候,自动释放内存了..
Terminated:= True;
就能在线程终止的时候,自动释放内存了..
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
type
TTest=Class(TThread)
private
public
constructor create;
end;
implementation
constructor TTest.Create;
begin
Inherited Create(true);
Freeonterminate:=true;
resume;
end;
提示:TTimer时钟类型触发的事件在执行过程中,时钟同时仍在计时。
TTest=Class(TThread)
private
public
constructor create;
end;
implementation
constructor TTest.Create;
begin
Inherited Create(true);
Freeonterminate:=true;
resume;
end;
提示:TTimer时钟类型触发的事件在执行过程中,时钟同时仍在计时。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询