Fungsi InitOnceInitialize (synchapi.h)

Menginisialisasi struktur inisialisasi satu kali.

Sintaks

void InitOnceInitialize(
  [out] PINIT_ONCE InitOnce
);

Parameter

[out] InitOnce

Penunjuk ke struktur inisialisasi satu kali.

Mengembalikan nilai

Tidak ada

Keterangan

Fungsi InitOnceInitialize digunakan untuk menginisialisasi struktur inisialisasi satu kali secara dinamis. Untuk menginisialisasi struktur secara statis, tetapkan INIT_ONCE_STATIC_INIT konstanta ke variabel struktur.

Untuk mengkompilasi aplikasi yang menggunakan fungsi ini, tentukan _WIN32_WINNT sebagai 0x0600 atau yang lebih baru. Untuk informasi selengkapnya, lihat Menggunakan Header Windows.

Objek inisialisasi satu kali tidak dapat dipindahkan atau disalin. Proses tidak boleh mengubah objek inisialisasi, dan sebaliknya harus memperlakukannya sebagai buram logis. Hanya gunakan fungsi inisialisasi satu kali untuk mengelola objek inisialisasi satu kali.

Contoh

Contoh berikut memanggil InitOnceInitialize untuk menginisialisasi struktur inisialisasi satu kali bernama InitOnce. Atau, struktur dapat dinyatakan sebagai variabel global seperti yang ditunjukkan dalam Menggunakan Inisialisasi 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;
}

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header synchapi.h (termasuk Windows.h pada Windows 7, Windows Server 2008 Windows Server 2008 R2)
Pustaka Kernel32.lib
DLL Kernel32.dll

Lihat juga

InitOnceExecuteOnce

Inisialisasi Satu Kali

Fungsi Sinkronisasi