如何为完成端口创建多个线程?

How to create multiple threads for the completion port?

多个线程可以使用 GetQueuedCompletionStatus() 函数使来自单个完成端口的完成数据包出队。是否有创建这些线程的特殊函数?或者我只是使用 CreateThread()_beginthreadex() 并根据需要创建尽可能多的线程?

在给定 IOCP 上调用 GetQueuedCompletionStatus() 的线程没有什么特别之处。任何线程都可以做到。因此,您可以使用通常的线程创建函数来创建 "I/O threads"。一般来说,最好使用 _beginthreadex(),除非您正在为不支持它的平台编写代码或者您没有与 CRT 链接。