Función SetIoRingCompletionEvent (ioringapi.h)
Registra un evento de cola de finalización con un anillo de E/S.
Sintaxis
HRESULT SetIoRingCompletionEvent(
HIORING ioRing,
HANDLE hEvent
);
Parámetros
ioRing
HiORING que representa un identificador en el anillo de E/S para el que se registra el evento de finalización.
hEvent
Identificador del objeto de evento. La función CreateEvent o OpenEvent devuelve este identificador.
Valor devuelto
Devuelve un VALOR HRESULT, incluidos los siguientes valores:
Valor | Descripción |
---|---|
S_OK | Correcto |
E_INVALID_HANDLE | Se pasó un identificador no válido en el parámetro ioRing . |
E_INVALIDARG | Se pasó un identificador no válido en el parámetro hEvent . |
Comentarios
El kernel indicará este evento cuando coloque la primera entrada en una cola de finalización vacía, es decir, el kernel solo establece el evento en el estado señalado cuando la cola de finalización pasa del estado vacío a no vacío. Las aplicaciones deben llamar a PopIoRingCompletion hasta que indique no más entradas y, a continuación, esperar a que se completen las finalizaciones asincrónicas adicionales a través del identificador proporcionado. De lo contrario, el evento no entrará en el estado señalado y la espera puede bloquearse hasta que se produzca un tiempo de espera, o para siempre si se usa un tiempo de espera infinito.
El kernel duplicará internamente el identificador, por lo que es seguro que la aplicación cierre el identificador cuando ya no se necesiten esperas. Proporcionar un valor de identificador de eventos de NULL simplemente borra cualquier valor existente. Si se establece un valor de INVALID_HANDLE_VALUE se produce un error, como cualquier otro valor de identificador no válido, para ayudar a detectar errores de código antes.
Hay, como máximo, un identificador de eventos asociado a un HIORING, al intentar establecer un segundo, se reemplazará cualquiera que ya exista.
Requisitos
Cliente mínimo compatible | Windows Build 22000 |
Servidor mínimo compatible | Windows Build 22000 |
Encabezado | ioringapi.h |