den*_*isV 9 c++ windows winapi windows-services
有人可以指点我在Win32服务中使用计时器的最简单方法吗?
我想我可以为此目的创建一个虚拟窗口,或者让第二个线程做滴答计数,但最好的是什么?有更优雅的方式吗?
提前致谢.
您可以使用内核等待计时器对象,而不是使用UI计时器(即使您可以使用1800-INFO先生所示的NULL窗口句柄).请参阅API文档中的CreateWaitableTimer.然后可以使用WaitForSingleObject或WaitForMultipleObjects等等这些等待,如果您的服务已经等待外部事件,这将特别有用.
如果从第一个链接不清楚,则SetWaitableTimer函数可以将完成例程(用户回调)与计时器相关联.请记住使用... WaitForMultipleObjects(等)的Ex版本,以便线程处于"可警告"状态.
归档时间: |
|
查看次数: |
8653 次 |
最近记录: |