win7系统睡眠后再唤醒,程序的线程无法退出。

路人乙2019 2015-04-15 09:27:59
正常情况下可以顺利退出,睡眠后再唤醒系统再退出,线程就无法退出。我是在CreateThread中传入一个类指针CMyClass* pMy,然后在线程判断类的一个变量pMy->m_bQuit, while(pMy->m_bQuit)如果值为0便会结束循环退出线程,程序退出时会设置m_bQuit的值为0,但睡眠醒来后再退出程序,跟踪设置m_bQuit的代码,确实使m_bQuit为0了,但线程中m_bQuit始终是1.
...全文
206 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Gluse邹 2015-04-17
  • 打赏
  • 举报
回复
关注一下,我也遇到同样的问题。系统唤醒后导致程序运行不正常。
赵4老师 2015-04-17
  • 打赏
  • 举报
回复
结束进程时,操作系统会自动结束该进程创建的线程。
oyljerry 2015-04-15
  • 打赏
  • 举报
回复
先看你的线程跑到什么地方了,是不是被挂起了
coolksj 2015-04-15
  • 打赏
  • 举报
回复
你在主线程里设置退出标志的吧. 你可以试一下, 在设标志之前, 将线程的优先级调到实时. 不然有时候会产生锁定

15,473

社区成员

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

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