C++的MFC中调用完m_hThread=CreateThread(); 之后准备停止线程线程有可能被阻塞。

C++的MFC调用完m_hThread=CreateThread();之后准备停止线程线程有可能被阻塞之后再调用m_hThread=CreateThread();之前的线... C++的MFC调用完m_hThread=CreateThread(); 之后准备停止线程 线程有可能被阻塞 之后再调用m_hThread=CreateThread(); 之前的线程对象还会被销毁吗?
如果不会被销毁该如何停止一个线程(除了使用AfxEndThread)等函数强制停止线程。
展开
 我来答
cooke1234
2016-09-06 · TA获得超过6861个赞
知道大有可为答主
回答量:4617
采纳率:72%
帮助的人:3614万
展开全部
再次调用CreateThread(),系统并不会自动销毁原来的线程。这需要你自己来做销毁。
如果由系统来销毁你的线程(比如强制调用AfxEndThread),系统并不能保证使用中的资源被正确释放掉。
正确的做法是,通知线程自动结束,线程收到通知后自动释放资源并结束。
你的应用里,线程可能被阻塞。所以需要改成非阻塞方式,或者限时阻塞的方式。
如果应用不介意系统资源的问题,那么也可以考虑强制停止线程的方式。
Aupryyyyyyyyyy
2016-09-05 · TA获得超过1636个赞
知道大有可为答主
回答量:1574
采纳率:53%
帮助的人:958万
展开全部
如果线程主函数返回了线程不就自动停止了么
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式