我的程序都关闭了,可是为什么进程还存在,我用了多线程的? up,是不是退出前每个线程都要关闭呀? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 当然要了FThread.Terminate;while FThread.Suspended do FThread.Resume;while WaitForSingleObject(FThread.Handle, 0) <> WAIT_OBJECT_0 do for J := 0 to 1000 do Application.ProcessMessages; 哇那退出肯定很慢乐我有无限制的线程让用户去打开的退岂不是都要一个一个的去关闭?这需要时间一楼的朋友,dwgz呀, 看不太懂也, 能不能稍为打几个汉字解释一下 在主进程的关闭事件里加入下面代码,不关什么错误都可以解决,应用程序全部退出terminiteprocess(getcurrentprocess,2); 如果你的线程太多,结束肯定要一段时间,我建议你还是把线程的句柄保存起来,然后一个个都结束了就可以实现安全关闭了,当你创建线程的时候加入到一个list中,list->Add((void* )(Handle))当你程序结束的时候,for(int i =0;i<List->Items->Count;i++)TerminateThread((THandle* )(List->Item[i])) 好像不是线程关闭的问题吧。估计问题还是在主线程,看看退出前的代码(OnClose、OnDestory、、、),或许是在等待什么满足不了的条件。 我是在线程的一个循环里作如下if application.terminated then self.terminate;问题是暂时解决了,不过好像不是很好 求推荐一本游戏编程入门的书籍 delphi中怎么设置动态触发 如何实现刷IP功能 有谁做过彩票? 兴奋帖:精通C++的5条绝密配方,如果你做到了,Bill Gates开着加长车,像当年请Anders Hejlsberg一样来请你 ADOQuery 如呵快速定位 记录顺序为 4,28,400, 的记录 文件操作出问题了 有关QReport的问题,控制字段长度内容的问题 关于多态问题,请教高手,提供有意义的答案者均有分. 如何用中文替换错误提示信息? 还有,怎样固定控件 ? TWebBrowser怎么屏蔽掉一个页面里的脚本或者其他的错误
FThread.Terminate;
while FThread.Suspended do FThread.Resume;
while WaitForSingleObject(FThread.Handle, 0) <> WAIT_OBJECT_0 do
for J := 0 to 1000 do Application.ProcessMessages;
那退出肯定很慢乐
我有无限制的线程让用户去打开的
退岂不是都要一个一个的去关闭?这需要时间一楼的朋友,dwgz呀, 看不太懂也, 能不能稍为打几个汉字解释一下
terminiteprocess(getcurrentprocess,2);
当你创建线程的时候加入到一个list中,list->Add((void* )(Handle))
当你程序结束的时候,
for(int i =0;i<List->Items->Count;i++)
TerminateThread((THandle* )(List->Item[i]))
if application.terminated then self.terminate;
问题是暂时解决了,不过好像不是很好