Bagikan melalui


Fungsi InitializeSynchronizationBarrier (synchapi.h)

Menginisialisasi penghubung sinkronisasi baru.

Sintaks

BOOL InitializeSynchronizationBarrier(
  [out] LPSYNCHRONIZATION_BARRIER lpBarrier,
  [in]  LONG                      lTotalThreads,
  [in]  LONG                      lSpinCount
);

Parameter

[out] lpBarrier

Penunjuk ke struktur SYNCHRONIZATION_BARRIER untuk diinisialisasi. Ini adalah struktur buram yang tidak boleh dimodifikasi oleh aplikasi.

[in] lTotalThreads

Jumlah maksimum utas yang dapat memasukkan hambatan ini. Setelah jumlah maksimum utas memasuki pembatas, semua utas berlanjut.

[in] lSpinCount

Frekuensi utas individu harus berputar sambil menunggu utas lain tiba di pembatas. Jika parameter ini adalah -1, utas berputar 2000 kali. Jika utas melebihi lSpinCount, utas memblokir kecuali disebut EnterSynchronizationBarrier dengan SYNCHRONIZATION_BARRIER_FLAGS_SPIN_ONLY.

Nilai kembali

TRUE jika penghubung berhasil diinisialisasi. Jika hambatan tidak berhasil diinisialisasi, fungsi ini mengembalikan FALSE. Gunakan GetLastError untuk mendapatkan informasi kesalahan yang diperluas.

Persyaratan

   
Klien minimum yang didukung Windows 8 [khusus aplikasi desktop]
Server minimum yang didukung Windows Server 2012 [hanya aplikasi desktop]
Target Platform Windows
Header synchapi.h (sertakan Windows.h)
Pustaka Kernel32.lib
DLL Kernel32.dll

Lihat juga

DeleteSynchronizationBarrier

EnterSynchronizationBarrier

Penghalang Sinkronisasi

API Vertdll tersedia di enklave VBS