我即将使用CreateTimerQueue(),但想要澄清一些观点。
文档 http://msdn.microsoft.com/en-us/library/windows/desktop/ms682485(v=vs.85).aspx
实施例 http://msdn.microsoft.com/en-gb/library/windows/desktop/ms687003(v=vs.85).aspx
上面的链接表明提供给CreateTimerQueue()的回调函数是在一个单独的线程中运行的,但是这个线程来自哪里?每次调用回调函数时都会创建和销毁它吗?或者是否有一个由O / S管理的线程池?我之前从未使用线程池,但我认为我必须自己实现一个并根据需要向每个线程发送任务,这显然是不正确的。
与好的文章的链接会很好,就像linux等价物的比较一样。
由于
答案 0 :(得分:0)
如您链接到的文档中所述,默认情况下回调发生在工作线程中:
WT_EXECUTEDEFAULT 00000000 默认情况下,回调函数排队到非I / O工作线程。
有关工作线程的详细信息,请参阅MSDN页面Thread Pools。