怎样终止线程??

coolgordon 2003-08-22 01:14:01
???????
...全文
15 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
dawndu 2003-08-29
  • 打赏
  • 举报
回复
vcforever(霓裳羽衣) 说的有道理,我还来补充一下
你可以用一个事件对象让线程函数判一下,要它退出时就在主线程激发它,这样线程函数就退出了。其它vcforever(霓裳羽衣) 都说了
kernalandkernal 2003-08-28
  • 打赏
  • 举报
回复
正确的做法是
GetExitThreadCode(dwThread)
ExitThread(dwThread)
CloseHandle(ThreadHandle)
ISAKEEPER 2003-08-28
  • 打赏
  • 举报
回复
up
ftp127 2003-08-28
  • 打赏
  • 举报
回复
up!
小弟顺便问一下关于AfxExitThread()的用法,它能结束线程吗?若能,是不是用于在线程内结束自己?清高手指点。
vcforever 2003-08-22
  • 打赏
  • 举报
回复
不提倡TerminateThread这种结束线程的方法太过强硬
有可能导致线程资源无法释放!
建议:HANDLE hThread = CreateThread(......)
.....................
WaitForSingleObject(hThread);
来等待线程的正确返回!
这样比较安全!不会造成资源泄露!
fanfyj 2003-08-22
  • 打赏
  • 举报
回复
up
ilovedrv 2003-08-22
  • 打赏
  • 举报
回复
要将线程正常终止,应满足以下两个条件
(1)正常退出线程回调函数
(2)调用CloseHandle关闭线程句柄
FAICHEN 2003-08-22
  • 打赏
  • 举报
回复
等待返回
不提倡terminatethread
feixue3000 2003-08-22
  • 打赏
  • 举报
回复
BOOL TerminateThread(
HANDLE hThread, // handle to the thread
DWORD dwExitCode // exit code for the thread
);

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧