{
//... ...
ResetEvent(pThis->m_hExitEvent);
WaitForSingleObject(pThis->m_hExitEvent, INFINITE); //对象被触发信号后,函数才会返回
//... ...
}
上面代码是一个程序中紧挨着的两句,有点不明白了,前句把事件对像置为无信号状态,
后句是等待有信号的,这两个写在一起,感觉会一直等待下去,实际上却没有,为什么呢
------解决方案--------------------
进程和线程在运行状态则为无信号状态(所以不用程序来置无信号状态),在进程和线程退出后为有信号状态,线程所等待的对象变为有信号状态,则WaitForSingleObject函数立即返回