线程不能退出,求大神帮忙看看

a469367940 a469367940 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
BOOL CSignalDlg::Init(const int nSourceID )
{
UNREFERENCED_PARAMETER(nSourceID);
m_hExitEvent = ::CreateEvent( NULL, TRUE, FALSE, NULL );
if( m_hExitEvent == NULL)
{
//SafeSprintf( lpErrorMsg, nSize, "%s", "CreateEvent 失败!!!" );
return FALSE;
}
return TRUE;
};

void CSignalDlg::Exit()
{
SetEvent(m_hExitEvent);
WaitForSingleObject(m_hHandle, INFINITE);
// AfxMessageBox("线程已经退出!");
}

LONG CSignalDlg::DoJob()
{
while (1)
{
// 等待退出事件
if(WaitForSingleObject(m_hExitEvent, 100) == WAIT_OBJECT_0)
{
AfxMessageBox("线程退出!");
break;
}
m_data++;
CString data;
data.Format("%d", m_data);
m_edit.SetWindowText(data);
}
// AfxMessageBox("线程退出!");
return 0;
}

//上述代码的意思是我在主线程中发信号给子线程让子线程退出,并且主线程等待着子线程完全退出,
但是我发现我发了信号后界面就卡着了,跟踪发现子线程并没有退出。求大神帮忙解决。
注:线程函数中调用doJob()
...全文

相关推荐

python子线程退出及线程退出控制的代码

下面通过代码给大家介绍python子线程退出问题,具体内容如下所示: def thread_func(): while True: #do something #do something #do something t=threading.Thread(target = thread_func) t.start() # main thread do something # main thread do something # main thread do something 跑起来是没有问题的,但是使用ctrl + c中断的时候出问题了,主线程退出了,

等到风景都看透⊙∀⊙?

mfc安全退出线程

mfc安全退出线程mfc安全退出线程mfc安全退出线程mfc安全退出线程mfc安全退出线程

小学生009

Linux线程退出方式总结(推荐)

在编写多线程代码时,经常面临线程安全退出的问题。 一般情况下,选择检查标志位的方式: 在线程的while循环中,执行完例程后,都对标志位进行检查,如果标志位指示继续执行则再次执行例程,如果标志位设置为退出状态,则跳出循环,结束线程的运行。 这个标志位需要主线程(或其他线程)设置,设置后,主线程调用pthread_join接口进入休眠(接口参数指定了等待的线程控制指针),子线程退出后,主线程会接收到系统的信号,从休眠中恢复,这个时候就可以去做相关的资源清除动作。 这个方法可以保证子线程完全退出,主线程再去做相关的资源清除操作 时序图如下 但是某些应用中,或许会发生下面情况: 子线程

weixin_38622467

C/C++中退出线程的四种解决方法

退出线程可以有四种方法: 1.线程函数的return返回(最好这样):其中用线程函数的return返回, 而终止线程是最安全的, 在线程函数return返回后, 会清理函数内申请的类对象, 即调用这些对象的析构函数. 然后会自动调用 _endthreadex()函数来清理 _beginthreadex(…)函数申请的资源(主要是创建的tiddata对象). 2.调用 _endthreadex()函数 或 ExitThread()函数(最好不要):如果使用这两种方法退出线程, 则不会执行线程函数的return语句, 所以就不会调用线程函数作用域内申请的类对象的析构函数, 会造成内存泄露. 剩下两

weixin_38681218

python 线程的暂停, 恢复, 退出详解及实例

主要介绍了python 线程的暂停, 恢复, 退出详解及实例的相关资料,需要的朋友可以参考下

weixin_38673548
评论 5
收藏 已收藏
分享
返回顶部
a469367940
进程/线程/DLL 15,465 成员 49,169 内容