MFC 线程的暂停与继续,请问如何做啊。新手

MFC 线程的暂停与继续,请问如何做啊。新手。

新建线程
hThread=CreateThread(NULL,
0,
(LPTHREAD_START_ROUTINE)Test,
NULL,
0,
&ThreadID);

用WaitForSingleObject( hThread, INFINITE );使它暂停了。
请问如何让它重新开始运行。
先谢谢了。
答:
你好,一般情况下线程的暂停应该是这样的。
1.创建线程hThread=CreateThread()
2.增加事件。HANDLE hEvent = CreateEvent()参数作用请参见MSDN
3.在线程函数中使用WaitForSingleObject(hEvent , INFINITE );设置暂停开关,
如在线程函数中有如下结构:
while(true)
{
WaitForSingleObject(hEvent , INFINITE );
}
4.然后在需要控制线程运行的地方通过调用SetEvent(hEvent)和ResetEvent(hEvent)设置事件信号状态来控制线程运行或暂停。
5.关闭线程和事件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值