winsock , IOCP model , PER_IO_DATA 有关问题
winsock , IOCP model , PER_IO_DATA 问题
1 资料1
http://blog.****.net/sodme/archive/2005/07/17/427405.aspx
{{
typedef struct PER_IO_DATA
{
OVERLAPPED ovl;
WSABUF buf;
char RecvDataBuf[ MAX_BUFFER_SIZE ]; //接收缓冲区
char SendDataBuf[ MAX_BUFFER_SIZE ]; //发送缓冲区
OpType opType; //操作类型:发送、接收或关闭等
}
}}
2 资料 2
《Network Programming for Microsoft Windows 2nd edition.CHM》
typedef struct
{
OVERLAPPED Overlapped;
char Buffer[DATA_BUFSIZE];
int BufferLen;
int OperationType;
} PER_IO_DATA;
问题:
上面资料的 PER_IO_DATA 结构定义是不一样的,
系统 怎么知道 我们定义的 PER_IO_DATA 结构 是怎样的呢 ?
比如 调用 WSARecv() 系统如何知道 把数据复制到哪里?
------解决方案--------------------
OVERLAPPED Overlapped;系统只负责这个成员的 操作
1 资料1
http://blog.****.net/sodme/archive/2005/07/17/427405.aspx
{{
typedef struct PER_IO_DATA
{
OVERLAPPED ovl;
WSABUF buf;
char RecvDataBuf[ MAX_BUFFER_SIZE ]; //接收缓冲区
char SendDataBuf[ MAX_BUFFER_SIZE ]; //发送缓冲区
OpType opType; //操作类型:发送、接收或关闭等
}
}}
2 资料 2
《Network Programming for Microsoft Windows 2nd edition.CHM》
typedef struct
{
OVERLAPPED Overlapped;
char Buffer[DATA_BUFSIZE];
int BufferLen;
int OperationType;
} PER_IO_DATA;
问题:
上面资料的 PER_IO_DATA 结构定义是不一样的,
系统 怎么知道 我们定义的 PER_IO_DATA 结构 是怎样的呢 ?
比如 调用 WSARecv() 系统如何知道 把数据复制到哪里?
------解决方案--------------------
OVERLAPPED Overlapped;系统只负责这个成员的 操作