我在学习完成端口例程时遇到的问题
在主线程里声明结构,
typedef struct
{
OVERLAPPED Overlapped;
WSABUF DataBuf;
CHAR Buffer[DATA_BUFSIZE];
DWORD BytesSEND;
DWORD BytesRECV;
} PER_IO_OPERATION_DATA, * LPPER_IO_OPERATION_DATA;
变量:
LPPER_IO_OPERATION_DATA PerIoData;
并且:
PerIoData->BytesSEND = 0;
PerIoData->BytesRECV = 0;
然后投送变量&(PerIoData->Overlapped)到WSARecv操作中,每一个工作者线程都声明了一个自己得此种类型的变量在用GetQueuedCompletionStatus函数调用成功后获得
输出(LPOVERLAPPED *) &PerIoData然后对PerIoData有赋值操作.
问题是线程是不是都在主程序声明的PerIoData上面进行操作?