InitOnceInitialize 函式 (synchapi.h)

初始化一次性初始化結構。

語法

void InitOnceInitialize(
  [out] PINIT_ONCE InitOnce
);

參數

[out] InitOnce

一次性初始化結構的指標。

傳回值

備註

InitOnceInitialize 函式可用來動態初始化一次性初始化結構。 若要以靜態方式初始化 結構,請將常數 INIT_ONCE_STATIC_INIT 指派給結構變數。

若要編譯使用此函式的應用程式,請將_WIN32_WINNT定義為 0x0600 或更新版本。 如需詳細資訊,請參閱 使用 Windows 標頭

一次性初始化對象無法移動或複製。 進程不得修改初始化物件,而且必須改為將其視為邏輯不透明。 只使用一次性初始化函式來管理一次性初始化物件。

範例

下列範例會呼叫 InitOnceInitialize ,以初始化名為 的單 InitOnce次初始化結構。 或者,結構可以宣告為全域變數,如 使用初始化 One-Time 所示。


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

#include <windows.h>

BOOL StartInitialization()
{
    INIT_ONCE InitOnce;

    InitOnceInitialize(&InitOnce);

    //...
    return TRUE;
}

規格需求

需求
最低支援的用戶端 Windows Vista [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 synchapi.h (Windows 7、Windows Server 2008 Windows Server 2008 R2)
程式庫 Kernel32.lib
DLL Kernel32.dll

另請參閱

InitOnceExecuteOnce

一次性初始化

同步處理函式