【发布时间】:2015-02-24 16:14:14
【问题描述】:
我不完全明白OVERLAPPED 结构的目的是什么,它是用于高级的东西吗?例如,如果我想接收数据,我只需创建WSABUF 结构的实例并将其传递给WSARecv(),当读取操作完成时,我会处理缓冲区。但是OVERLAPPED 结构在哪里适合所有这些呢?
【问题讨论】:
-
执行异步IO时需要
-
@David Heffernan IOCP 不是异步 IO 吗?
-
WSARecv可以与重叠和非重叠套接字一起使用 -
@David Heffernan 是的,我知道。我的意思是使用 IOCP(重叠套接字)时它的用途。
-
OVERLAPPED 被驱动程序用来确定将操作结果写入何处。 WSABUF 可以追溯到更简单的时代,这不足以让驱动程序满意,因为它无法存储缓冲区偏移量。
标签: c++ sockets winapi network-programming iocp