共用方式為


PINIT_ONCE_FN回呼函式 (synchapi.h)

應用程式定義的回呼函式。 呼叫 InitOnceExecuteOnce 函式時,指定此函式的指標。 PINIT_ONCE_FN 類型會定義這個回呼函式的指標。 InitOnceCallback 是應用程式定義函數名稱的佔位元元。

語法

PINIT_ONCE_FN PinitOnceFn;

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

參數

[in, out] InitOnce

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

[in, out, optional] Parameter

傳遞至回調函式的選擇性參數。

[out, optional] Context

要以一次性初始化結構儲存的數據。 如果 Context 參考值,則值的低階 INIT_ONCE_CTX_RESERVED_BITS 必須是零。 如果 Context 指向數據結構,則數據結構必須 DWORD對齊。 Context 不得為 Arm32 上的程式碼指標,因為 Arm32 程式代碼指標一律設定最少的重要位,如需詳細資訊,請參閱 Arm32 ABI

傳回值

如果函式傳回 TRUE,則會將 區塊標示為初始化。

如果函式傳回 FALSE,則區塊不會標示為初始化,而且呼叫 InitOnceExecuteOnce 失敗。 若要傳達其他錯誤資訊,請先呼叫 SetLastError,再傳回 FALSE

言論

此函式可以建立同步處理物件,並在 lpContext 參數中傳回它。

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

例子

如需使用此函式的範例,請參閱使用 One-Time 初始化

要求

要求 價值
最低支援的用戶端 Windows Vista [傳統型應用程式 |UWP 應用程式]
支援的最低伺服器 Windows Server 2008 [傳統型應用程式 |UWP 應用程式]
目標平臺 窗戶
標頭 synchapi.h (包括 Windows.h)

另請參閱

InitOnceExecuteOnce

InitOnceInitialize

同步處理函式