读书人

事件对象Event的施用

发布时间: 2012-06-20 20:37:21 作者: rapoo

事件对象Event的使用

最近使用到Event,做一下总结。


1、对象的创建:

创建了一个匿名的初始状态为“无信号”状态的Event。


因为我们在初始创建Event时将信号状态设为FALSE,此后一直没有变化,所以在_Thread_Proc线程函数中WaitForSingleObject一直在等待1000ms后返回WAIT_TIMEOUT,使得文件的保存操作得以调用。


当程序退出时,CConfigFileMgr对象需要析构,则调用SetEvent将信号设置为有状态,然后紧接着让m_hThread对应的线程进入等待,这时_Thread_Proc又检测到m_hEvent有信号,返回WAIT_OBJECT_0。使得死循环跳出,然后用_endthreadex结束线程。


最终关闭释放所有HANDLE,整个程序结束。可以看出,_Thread_Proc函数实际上起到了一个定时器的效果。






读书人网 >编程

热点推荐