InitializeSynchronizationBarrier-Funktion (synchapi.h)
Initialisiert eine neue Synchronisierungsbarriere.
Syntax
BOOL InitializeSynchronizationBarrier(
[out] LPSYNCHRONIZATION_BARRIER lpBarrier,
[in] LONG lTotalThreads,
[in] LONG lSpinCount
);
Parameter
[out] lpBarrier
Ein Zeiger auf die zu initialisierende SYNCHRONIZATION_BARRIER-Struktur. Dies ist eine undurchsichtige Struktur, die von Anwendungen nicht geändert werden sollte.
[in] lTotalThreads
Die maximale Anzahl von Threads, die in diese Barriere gelangen können. Nachdem die maximale Anzahl von Threads die Barriere betreten hat, werden alle Threads fortgesetzt.
[in] lSpinCount
Gibt an, wie oft ein einzelner Thread gedreht werden soll, während er darauf wartet, dass andere Threads die Barriere erreichen. Wenn dieser Parameter ist -1
, wird der Thread 2000-mal gedreht. Wenn der Thread lSpinCount überschreitet, blockiert der Thread, es sei denn, er hat EnterSynchronizationBarrier mit SYNCHRONIZATION_BARRIER_FLAGS_SPIN_ONLY aufgerufen.
Rückgabewert
TRUE
, wenn die Barriere erfolgreich initialisiert wurde. Wenn die Barriere nicht erfolgreich initialisiert wurde, gibt diese Funktion zurück FALSE
. Verwenden Sie GetLastError , um erweiterte Fehlerinformationen abzurufen.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 8 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2012 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | synchapi.h (windows.h einschließen) |
Bibliothek | Kernel32.lib |
DLL | Kernel32.dll |