Função RtlRunOnceComplete (ntddk.h)
A rotina de 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 executem em paralelo. Se esse sinalizador for usado, as chamadas subsequentes para a rotina de rtlRunOnceComplete do 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.
Valor de retorno
RtlRunOnceComplete retorna um dos seguintes valores NTSTATUS:
Código de retorno | Descrição |
---|---|
|
A operação foi concluída com êxito. |
|
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. |
Observações
Se RtlRunOnceComplete retornar STATUS_SUCCESS, qualquer chamada subsequente para RtlRunOnceBeginInitialize para a mesma estrutura RTL_RUN_ONCE 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á limpar qualquer inicialização que ele tentou.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível no Windows Vista e versões posteriores do Windows. |
da Plataforma de Destino | Universal |
cabeçalho | ntddk.h (inclua Ntddk.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |