Partager via


Fonction RtlRunOnceComplete (ntddk.h)

La routine RtlRunOnceComplete termine l’initialisation ponctuelle commencée par RtlRunOnceBeginInitialize.

Syntaxe

NTSYSAPI NTSTATUS RtlRunOnceComplete(
  [in, out]      PRTL_RUN_ONCE RunOnce,
  [in]           ULONG         Flags,
  [in, optional] PVOID         Context
);

Paramètres

[in, out] RunOnce

Pointeur vers la RTL_RUN_ONCE structure d’initialisation unique.

[in] Flags

Les pilotes peuvent éventuellement spécifier un ou plusieurs des indicateurs suivants :

RTL_RUN_ONCE_ASYNC

Fonctionnez en mode asynchrone. Ce mode permet d’exécuter plusieurs tentatives d’achèvement en parallèle. Si cet indicateur est utilisé, les appels suivants à la routine RtlRunOnceComplete échouent, sauf si cet indicateur est également spécifié.

RTL_RUN_ONCE_INIT_FAILED

Échec de la tentative d’initialisation.

[in, optional] Context

Spécifie les données initialisées.

Valeur de retour

RtlRunOnceComplete retourne l’une des valeurs NTSTATUS suivantes :

Retourner le code Description
STATUS_SUCCESS
L’opération s’est terminée avec succès.
STATUS_UNSUCCESSFUL
L’opération n’a pas pu être terminée. Si l’appelant a spécifié RTL_RUN_ONCE_ASYNC dans le paramètre Indicateurs, cette valeur peut indiquer qu’un autre thread a terminé l’initialisation.

Remarques

Si RtlRunOnceComplete retourne STATUS_SUCCESS, tout appel ultérieur à RtlRunOnceBeginInitialize pour la même structure de RTL_RUN_ONCE fournit Context que les données initialisées.

Si l’appelant spécifié RTL_RUN_ONCE_ASYNC dans le paramètre Flags et RtlRunOnceComplete retourne n’importe quelle valeur autre que STATUS_SUCCESS, l’appelant doit nettoyer toute initialisation qu’il a tentée.

Exigences

Exigence Valeur
client minimum pris en charge Disponible dans Windows Vista et versions ultérieures de Windows.
plateforme cible Universel
d’en-tête ntddk.h (include Ntddk.h)
bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Voir aussi

RTL_RUN_ONCE

RtlRunOnceBeginInitialize

RtlRunOnceExecuteOnce

RtlRunOnceInitialize

RunOnceInitialization