Функция BindIoCompletionCallback


Функция BindIoCompletionCallback связывает заданный дескриптор файла с портом окончания ввода-вывода пула потоков. По завершению запроса ввода - вывода (I/O), рабочий поток, не производящий ввод-вывод данных (I/O) исполняет функцию повторного вызова.

Синтаксис

BOOL BindIoCompletionCallback(
  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

Нет

Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz