Funzione InitOnceInitialize (synchapi.h)

Inizializza una struttura di inizializzazione una tantum.

Sintassi

void InitOnceInitialize(
  [out] PINIT_ONCE InitOnce
);

Parametri

[out] InitOnce

Puntatore alla struttura di inizializzazione monouso.

Valore restituito

nessuno

Osservazioni

La funzione InitOnceInitialize viene usata per inizializzare in modo dinamico una struttura di inizializzazione una tantum. Per inizializzare la struttura in modo statico, assegnare la costante INIT_ONCE_STATIC_INIT alla variabile di struttura.

Per compilare un'applicazione che usa questa funzione, definire _WIN32_WINNT come 0x0600 o versione successiva. Per altre informazioni, vedere Uso delle intestazioni di Windows.

Non è possibile spostare o copiare un oggetto di inizializzazione una tantum. Il processo non deve modificare l'oggetto di inizializzazione e deve invece considerarlo opaco in modo logico. Usare solo le funzioni di inizializzazione monouso per gestire gli oggetti di inizializzazione una tantum.

Esempio

Nell'esempio seguente viene chiamato InitOnceInitialize per inizializzare la struttura di inizializzazione monouso denominata InitOnce. In alternativa, la struttura può essere dichiarata come variabile globale, come illustrato in Uso di One-Time Inizializzazione.


//Requires Windows Vista, Windows Server 2008 or later
#define _WIN32_WINNT 0x0600

#include <windows.h>

BOOL StartInitialization()
{
    INIT_ONCE InitOnce;

    InitOnceInitialize(&InitOnce);

    //...
    return TRUE;
}

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [app desktop | App UWP]
Server minimo supportato Windows Server 2008 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione synchapi.h (include Windows.h in Windows 7, Windows Server 2008 Windows Server 2008 R2)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

InitOnceExecuteOnce

Inizializzazione una tantum

Funzioni di sincronizzazione