关于IOCP WSASend发送数据到客户端 出现LastError 为6的问题。。折腾我半天啊!
WSAGetLastError 为 6的错误码
说明发送句柄为空,找不到这个句柄,
原因是没有 ZerMemory(&over,sizeof(OVERLAPPED)); 对这个结构体初始化
后来网上找了很久原因是
关于
typedef struct _OVERLAPPED {
ULONG_PTR Internal;
ULONG_PTR InternalHigh;
union {
struct {
DWORD Offset;
DWORD OffsetHigh;
} DUMMYSTRUCTNAME;
PVOID Pointer;
} DUMMYUNIONNAME;
HANDLE hEvent;
} OVERLAPPED, *LPOVERLAPPED;
hEvent被填充为0xCCCCCCCC,或其他的,就会出现"句柄无效"的错误
但使用了ZeroMemory时,hEvent被填充为0x00000000,好像也不是有效的句柄,但不会出现以上错误。。记录下来。。
总之IOCP还是很多细节问题,够蛋疼的