为什么GetOverlappedResult
需要文件句柄?
等待事件似乎WaitForSingleObject(overlapped->hEvent)
就足够了,这样重叠的 I/O 就完成了,那么GetOverlappedResult
文件句柄有什么用呢?
为什么GetOverlappedResult
需要文件句柄?
等待事件似乎WaitForSingleObject(overlapped->hEvent)
就足够了,这样重叠的 I/O 就完成了,那么GetOverlappedResult
文件句柄有什么用呢?
文档的备注部分似乎解释了何时hFile
需要:
如果 OVERLAPPED 结构的 hEvent 成员为 NULL,则系统使用 hFile 句柄的状态来指示操作何时完成。不鼓励为此目的使用文件、命名管道或通信设备句柄。使用事件对象更安全,因为在同一文件、命名管道或通信设备上执行多个同时重叠的操作时可能会发生混淆。在这种情况下,无法知道是哪个操作导致对象的状态发出信号。