相关疑难解决方法(0)

从IOCP线程调用WSAGetLastError()会返回不正确的结果

我已经打电话WSARecv()回来了WSA_IO_PENDING.然后我RST从另一端发送了一个数据包.GetQueuedCompletionStatus()存在于另一个线程中的函数已FALSE按预期返回,但是当我调用时,WSAGetLastError()我得到了64而不是WSAECONNRESET.

那为什么WSAGetLastError()不回来WSAECONNRESET


编辑:

我忘了提到当我WSAGetLastError()在失败后直接调用时WSARecv()(由于RST收到了数据包),返回的错误代码是WSAECONNRESET和不是64.

所以看起来返回的错误代码取决于在WSARecv()调用它之后是否直接失败,或者在检索完成数据包之后失败.

c++ sockets iocp

8
推荐指数
1
解决办法
1158
查看次数

标签 统计

c++ ×1

iocp ×1

sockets ×1