当我运行这个程序
OVERLAPPED o;
int main()
{
..
CreateIoCompletionPort(....);
for (int i = 0; i<10; i++)
{
WriteFile(..,&o);
OVERLAPPED* po;
GetQueuedCompletionStatus(..,&po);
}
}
似乎 WriteFile 直到写入工作完成才返回。同时,调用 GetQueuedCompletionStatus()。该行为类似于同步 IO 操作,而不是异步 IO 操作。
这是为什么?