C++用CreateThread创建线程与判断线程超时

代码如下

Int a=0;  
DWORD ThreadID;  
HANDLE hThread = CreateThread(NULL,0,(LPTHREAD_START_ROUTE)fun,&a,0,&ThreadID)
if(WAIT_TIMEOUT==WaitForSngleObject(hMutex,60000))  //超时时间60秒
{
   cout<<"fun线程超时"<<endl;
   //......
   //......
}


CreateThread参数说明

第一个参数:表示线程内核对象的安全属性,一般传入NULL表示使用默认设置

第二个参数:表示栈空间大小0表示使用默认大小(1MB

第三个参数:表示新线程所执行的线程函数地址,多个线程可以使用同一个函数地址

第四个参数:a为传给线程函数的参数

第五个参数:指定额外的标志来控制线程的创建,这里0表示线程创建之后立即就可以进行调度,如果为CREATE_SUSPENDED则表示线程创建后暂停运行,这样它就无法调度,直到调用Resume Thread()

第六个参数:返回线程的IDNULL表示不需要返回该线程的ID

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值