Зачем GetOverlappedResult нужен дескриптор файла?
Почему GetOverlappedResult
нужен дескриптор файла?
Это похоже на WaitForSingleObject(overlapped->hEvent)
должно быть достаточно, чтобы дождаться события, чтобы перекрывающийся ввод-вывод завершился, так что же GetOverlappedResult
использовать дескриптор файла для?
1 ответ
Раздел примечаний документации, кажется, объясняет, когда hFile
нужно:
Если элемент hEvent структуры OVERLAPPED имеет значение NULL, система использует состояние дескриптора hFile, чтобы сигнализировать о завершении операции. Использование файлов, именованных каналов или дескрипторов коммуникационных устройств для этой цели не рекомендуется. Безопаснее использовать объект события из-за путаницы, которая может возникнуть, когда несколько одновременных операций с перекрытиями выполняются для одного и того же файла, именованного канала или устройства связи. В этой ситуации нет способа узнать, какая операция вызвала сигнал состояния объекта.