DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2012年8月15日

摘要: HANDLE hMutex;hMutex = ::CreateMutex(NULL, FALSE, NULL);::WaitForSingleObject(hMutex, INFINITE); // 1::WaitForSingleObject(hMutex, INFINITE); // 2好多初学者都认为,设置为FALSE就是没有获得获得信号。。 其实这是错误的。真确的理解是:CreateMutex()函数的第二个参数是FALSE,表示刚刚创建的这个Mutex不属于任何线程也就是没有任何线程拥有他,一个Mutex在没有任何线程拥有他的时候,他是处于激发态的, 所以处于有信号状态。当你调用:: 阅读全文
posted @ 2012-08-15 18:01 DoubleLi 阅读(5041) 评论(0) 推荐(1)

摘要: 如何终止线程的运行(C/C++)想要终止线程的运行,可以使用以下方法:1、线程函数返回(最好使用该方法)。2、通过调用ExitThread函数,线程将自行撤消(最好不使用该方法)。3、同一个进程或另一个进程中的线程调用TerminateThread函数(应避免使用该方法)。4、ExitProcess和TerminateProcess函数也可以用来终止线程的运行(应避免使用该方法)。下面将详细介绍终止线程运行的方法:1-4,并说明线程终止运行时会出现何种情况:5。1、线程函数返回始终都应该将线程设计成这样的形式,即当想要线程终止运行时,它们就能够返回。这是确保所有线程资源被正确地清除的唯一办法。 阅读全文
posted @ 2012-08-15 15:40 DoubleLi 阅读(34179) 评论(0) 推荐(1)