从GetQueuedCompletionStatus取消阻止

时间:2016-07-25 04:48:17

标签: c++ c multithreading winsock2 resource-cleanup

在程序终止期间,如何通过调用GetQueuedCompletionStatus()来解除之前阻止的线程?

1 个答案:

答案 0 :(得分:4)

您可以使用PostQueuedCompletionStatus API调用将终止消息发布到IO完成端口,或者只需使用IOCP关闭CloseHandle句柄。

  

如果对GetQueuedCompletionStatus的调用因完成而失败   与之关联的端口句柄在调用时关闭   非常好,函数返回FALSE*lpOverlapped将是   NULLGetLastError将返回ERROR_ABANDONED_WAIT_0