PINIT_ONCE_FN Rückruffunktion (synchapi.h)

Eine anwendungsdefinierte Rückruffunktion. Geben Sie einen Zeiger auf diese Funktion an, wenn Sie die Funktion InitOnceExecuteOnce aufrufen. Der PINIT_ONCE_FN Typ definiert einen Zeiger auf diese Rückruffunktion. InitOnceCallback ist ein Platzhalter für den anwendungsdefinierte Funktionsnamen.

Syntax

PINIT_ONCE_FN PinitOnceFn;

BOOL PinitOnceFn(
  [in, out]           PINIT_ONCE InitOnce,
  [in, out, optional] PVOID Parameter,
  [out, optional]     PVOID *Context
)
{...}

Parameter

[in, out] InitOnce

Ein Zeiger auf die einmalige Initialisierungsstruktur.

[in, out, optional] Parameter

Ein optionaler Parameter, der an die Rückruffunktion übergeben wurde.

[out, optional] Context

Die Daten, die mit der einmaligen Initialisierungsstruktur gespeichert werden sollen. Wenn Context auf einen Wert verweist, muss die INIT_ONCE_CTX_RESERVED_BITS niedriger Reihenfolge des Werts null sein. Wenn Context auf eine Datenstruktur verweist, muss die Datenstruktur DWORD-ausgerichtet sein. Der Kontext darf kein Codezeiger auf Arm32 sein, da Arm32-Codezeiger immer das am wenigsten signifikante Bit festgelegt haben. Weitere Informationen finden Sie unter Arm32 ABI .

Rückgabewert

Wenn die Funktion TRUE zurückgibt, wird der Block als initialisiert markiert.

Wenn die Funktion FALSE zurückgibt, wird der Block nicht als initialisiert markiert, und der Aufruf von InitOnceExecuteOnce schlägt fehl. Um zusätzliche Fehlerinformationen zu kommunizieren, rufen Sie SetLastError auf, bevor FALSE zurückgegeben wird.

Hinweise

Diese Funktion kann ein Synchronisierungsobjekt erstellen und im lpContext-Parameter zurückgeben.

Um eine Anwendung zu kompilieren, die diese Funktion verwendet, definieren Sie _WIN32_WINNT als 0x0600 oder höher. Weitere Informationen finden Sie unter Verwenden der Windows-Header.

Beispiele

Ein Beispiel, das diese Funktion verwendet, finden Sie unter Verwenden One-Time Initialisierung.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile synchapi.h (windows.h einschließen)

Weitere Informationen

InitOnceExecuteOnce

InitOnceInitialize

Synchronisierungsfunktionen