Condividi tramite


Funzione InitializeSynchronizationBarrier (synchapi.h)

Inizializza una nuova barriera di sincronizzazione.

Sintassi

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

Parametri

[out] lpBarrier

Puntatore alla struttura SYNCHRONIZATION_BARRIER da inizializzare. Si tratta di una struttura opaca che non deve essere modificata dalle applicazioni.

[in] lTotalThreads

Numero massimo di thread che possono entrare in questa barriera. Dopo aver immesso la barriera il numero massimo di thread, tutti i thread continuano.

[in] lSpinCount

Il numero di volte in cui un singolo thread deve venire in attesa che altri thread arrivino alla barriera. Se questo parametro è -1, il thread ruota 2000 volte. Se il thread supera lSpinCount, i blocchi di thread, a meno che non venga chiamato EnterSynchronizationBarrier con SYNCHRONIZATION_BARRIER_FLAGS_SPIN_ONLY.

Valore restituito

TRUE se la barriera è stata inizializzata correttamente. Se la barriera non è stata inizializzata correttamente, questa funzione restituisce FALSE. Usare GetLastError per ottenere informazioni sull'errore estese.

Requisiti

   
Client minimo supportato Windows 8 [solo app desktop]
Server minimo supportato Windows Server 2012 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione synchapi.h (includere Windows.h)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

DeleteSynchronizationBarrier

EnterSynchronizationBarrier

Barriere di sincronizzazione

API Vertdll disponibili nelle enclave VBS