StartThreadpoolIo抛出无效参数异常

时间:2018-01-10 22:39:30

标签: asynchronous pipe threadpool windows-vista named

我尝试使用新线程池API使用命名管道。我的代码大部分时间都在工作,但是在调用StartThreadpoolIo时我得到间歇性的无效参数异常。我已经确认TP_IO尚未关闭,并且句柄有效;所以我对于出了什么问题感到茫然。

有谁知道其他条件导致无效参数异常?

1 个答案:

答案 0 :(得分:0)

好吧,由于我对此没有任何输入,因此我将实现更改为在OVERLAPPED结构中使用该事件,而改用TP_WAIT。

此实现中存在一个错误,当您使用重叠的io时,所有读写操作都应该重叠。我在网上找到的示例将使用同步ReadFile来完成读取消息的内容,这是错误

我现在认为,基于TP_IO的实现中的这种同步读取是导致异常的原因。但我无法确认。