Función RtlRunOnceComplete (ntddk.h)
La rutina RtlRunOnceComplete completa la inicialización única iniciada por RtlRunOnceBeginInitialize.
Sintaxis
NTSYSAPI NTSTATUS RtlRunOnceComplete(
[in, out] PRTL_RUN_ONCE RunOnce,
[in] ULONG Flags,
[in, optional] PVOID Context
);
Parámetros
[in, out] RunOnce
Puntero a la RTL_RUN_ONCE estructura de inicialización única.
[in] Flags
Opcionalmente, los controladores pueden especificar una o varias de las marcas siguientes:
RTL_RUN_ONCE_ASYNC
Operar en modo asincrónico. Este modo permite que varios intentos de finalización se ejecuten en paralelo. Si se usa esta marca, se producirá un error en las llamadas posteriores a la rutina RtlRunOnceComplete a menos que también se especifique esta marca.
RTL_RUN_ONCE_INIT_FAILED
Error en el intento de inicialización.
[in, optional] Context
Especifica los datos inicializados.
Valor devuelto
RtlRunOnceComplete devuelve uno de los siguientes valores NTSTATUS:
Código devuelto | Descripción |
---|---|
|
La operación se ha completado correctamente. |
|
No se pudo completar la operación. Si el autor de la llamada especificó RTL_RUN_ONCE_ASYNC en el parámetro Flags , este valor puede indicar que otro subproceso completó la inicialización. |
Comentarios
Si RtlRunOnceComplete devuelve STATUS_SUCCESS, cualquier llamada posterior a RtlRunOnceBeginInitialize para la misma estructura de RTL_RUN_ONCE proporciona Context como los datos inicializados.
Si el llamador especificado RTL_RUN_ONCE_ASYNC en el parámetro Flags y RtlRunOnceComplete devuelve cualquier valor distinto de STATUS_SUCCESS, el autor de la llamada debe limpiar cualquier inicialización que haya intentado.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Windows Vista y versiones posteriores de Windows. |
Plataforma de destino | Universal |
Encabezado | ntddk.h (incluya Ntddk.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |