Função RtlRunOnceComplete (ntddk.h)
A rotina RtlRunOnceComplete conclui a inicialização única iniciada por RtlRunOnceBeginInitialize.
Sintaxe
NTSYSAPI NTSTATUS RtlRunOnceComplete(
[in, out] PRTL_RUN_ONCE RunOnce,
[in] ULONG Flags,
[in, optional] PVOID Context
);
Parâmetros
[in, out] RunOnce
Ponteiro para o RTL_RUN_ONCE estrutura de inicialização única.
[in] Flags
Opcionalmente, os drivers podem especificar um ou mais dos seguintes sinalizadores:
RTL_RUN_ONCE_ASYNC
Operar no modo assíncrono. Esse modo permite que várias tentativas de conclusão sejam executadas em paralelo. Se esse sinalizador for usado, as chamadas subsequentes para a rotina RtlRunOnceComplete falharão, a menos que esse sinalizador também seja especificado.
RTL_RUN_ONCE_INIT_FAILED
Falha na tentativa de inicialização.
[in, optional] Context
Especifica os dados inicializados.
Retornar valor
RtlRunOnceComplete retorna um dos seguintes valores NTSTATUS:
Código de retorno | Descrição |
---|---|
|
A operação foi concluída com sucesso. |
|
Não foi possível concluir a operação. Se o chamador especificado RTL_RUN_ONCE_ASYNC no parâmetro Flags , esse valor poderá indicar que outro thread concluiu a inicialização. |
Comentários
Se RtlRunOnceComplete retornar STATUS_SUCCESS, qualquer chamada subsequente para RtlRunOnceBeginInitialize para o mesmo RTL_RUN_ONCE estrutura fornecerá Contexto que os dados inicializados.
Se o chamador especificado RTL_RUN_ONCE_ASYNC no parâmetro Flags e RtlRunOnceComplete retornar qualquer valor diferente de STATUS_SUCCESS, o chamador deverá limpo qualquer inicialização que tenha tentado.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível no Windows Vista e versões posteriores do Windows. |
Plataforma de Destino | Universal |
Cabeçalho | ntddk.h (inclua Ntddk.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |