以Mutex为例:
1、用计数来互斥--
不同的线程在Init时CreateMutex(FALSE)来得到各自Mutex的Handle.
在open时Waitforsingleobject(hMutex);退出时releaseMutex.
Deinit时CloseHandle(hMutex);
2、用有无来互斥:
在open时createMutex,如果GetLastError() = ALREADY_EXSISTED,则CloseHandle(hMutex),退出。
Mutex和event的区别:
Mutex如果create时参数为FALSE,则谁先waitforsingleobject,谁先得到mutex。
而event如果create时参数为FALSE,则wait时谁都进不去,故create时应置参数为TRUE。