다음을 통해 공유


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의 Windows.h 포함)
라이브러리 Kernel32.lib
DLL Kernel32.dll

참고 항목

InitOnceExecuteOnce

일회성 초기화

동기화 함수