线程的ID和互斥对象计数器
void main()
{
HANDLE hThread1;//线程的句柄
HANDLE hThread2;
hThread1=CreateThread(NULL,0,Fun1Proc,NULL,0,NULL);
hThread2=CreateThread(NULL,0,Fun2Proc,NULL,0,NULL);
CloseHandle(hThread1);//关闭句柄,并没有终止线程,表示主线程中对该句柄不感兴趣。
//当关闭句柄的时候,会递减新线程的线程内核对象的使用计数,
//线程执行完毕后,也会递减使用计数
//当使用计数为0时,系统会释放线程内核对象
CloseHandle(hThread2);
hMutex=CreateMutex(NULL,FALSE,NULL);//创建一个匿名的互斥对象.False 没有线程拥有该互斥对象,
WaitForSingleObject(hMutex,INFINITE);//同一个mian主线程中,hMutex又加1,变成了2
ReleaseMutex(hMutex);
ReleaseMutex(hMutex);//得释放两次,才能使hMutex的ID变成0,才能使“多线程-5”中的两个线程请求到互斥对象
Sleep(4000);//主线程放弃执行权力,进入等待状态
}