Функция
BindIoCompletionCallbackФункция
BindIoCompletionCallback связывает заданный дескриптор файла с портом окончания ввода-вывода пула потоков. По завершению запроса ввода - вывода (I/O), рабочий поток, не производящий ввод-вывод данных (I/O) исполняет функцию повторного вызова.Синтаксис
BOOLBindIoCompletionCallback( HANDLE FileHandle, // дескриптор файла LPOVERLAPPED_COMPLETION_ROUTINE Function, // повторный вызов ULONG Flags // зарезервировано ); |
Параметры
FileHandle
[in] Дескриптор файла, открытого для завершения асинхронной операции. Этот дескриптор возвращается функцией
CreateFile, с флажком FILE_FLAG_OVERLAPPED.Function
[in] Указатель на функцию повторного вызова, код которой будет исполняться в рабочем потоке, не производящем ввод-вывод данных (I/O), когда завершается операция ввода-вывода. Эта функция повторного вызова не должна вызывать функцию
TerminateThread.Для получения дополнительной информации о процедуре завершения, см. описание функции
FileIOCompletionRoutine.Flags
Зарезервирован, должен быть нуль.
Возвращаемые значения
Если функция завершается успешно, величина возвращаемого значения - не ноль.
Если функция завершается с ошибкой, величина возвращаемого значения - ноль. Чтобы получать дополнительные данные об ошибках, вызовите
GetLastError.Замечания
Убедитесь, что поток, который инициализирует асинхронный запрос ввода - вывода (I/O), не закончит работу прежде, чем будет выполнен запрос. К тому же, если функция в DLL ставится в очередь рабочего потока, убедитесь, что функция завершила исполнение кода прежде, чем DLL выгрузилась.
Чтобы компилировать приложение, которое использует эту функцию, определите макрокоманду
_WIN32_WINNT как 0x0500 или позже. Для получения дополнительной информации, см. статью Использование заголовков SDK.Смотри также
Краткий обзор Процессы и потоки
, Функции, используемые процессами и потоками, FileIOCompletionRoutine, Объединение потоков в пул
Размещение и совместимость BindIoCompletionCallback |
|
Windows. NET Server |
Да |
Windows XP |
Да |
Windows 2000 |
Да |
Windows NT |
Нет |
Windows Me |
Нет |
Windows 98 |
Нет |
Windows 95 |
Нет |
Используемая библиотека |
Kernel32.lib |
Заголовочный файл |
|
- объявлено в |
Winbase.h |
- включено в |
Windows.h |
Unicode |
Нет |
Замечания по платформе |
Не имеется |