关于线程的异常终止和初始化

lxy962301 2020-04-11 08:52:55
请问一下,在一个工作线程函数中等待信号量。如果由于不可抗因素(比如外部设备突然断电),接收不到该信号量,那么在主流程中该如何稳妥的终止该线程?

UINT ThreadProc()

...
WaitForSingleObject(mThreadEventDead, INFINITE);//等待事件触发
...
return 0;
...全文
297 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
丁劲犇 2020-04-11
  • 打赏
  • 举报
回复
可以把 INFINITE 换为时间,这样不会一直等待。检查返回值,并确定是触发还是超时。这样的话,就有机会通过全局变量之类的简单方法退出。

15,471

社区成员

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

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