InitializeSynchronizationBarrier 関数 (synchapi.h)
新しい同期バリアを初期化します。
構文
BOOL InitializeSynchronizationBarrier(
[out] LPSYNCHRONIZATION_BARRIER lpBarrier,
[in] LONG lTotalThreads,
[in] LONG lSpinCount
);
パラメーター
[out] lpBarrier
初期化する SYNCHRONIZATION_BARRIER 構造体へのポインター。 これは、アプリケーションで変更すべきではない不透明な構造です。
[in] lTotalThreads
このバリアに入ることができるスレッドの最大数。 スレッドの最大数がバリアに入った後、すべてのスレッドが続行されます。
[in] lSpinCount
他のスレッドがバリアに到達するのを待機している間に、個々のスレッドがスピンする必要がある回数。 このパラメーターが の -1
場合、スレッドは 2000 回スピンします。 スレッドが lSpinCount を超える場合、 SYNCHRONIZATION_BARRIER_FLAGS_SPIN_ONLYで EnterSynchronizationBarrier を呼び出さない限り、スレッドはブロック されます。
戻り値
TRUE
バリアが正常に初期化された場合は 。 バリアが正常に初期化されなかった場合、この関数は を返します FALSE
。 GetLastError を使用して、拡張エラー情報を取得します。
要件
サポートされている最小のクライアント | Windows 8 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2012 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | synchapi.h (Windows.h を含む) |
Library | Kernel32.lib |
[DLL] | Kernel32.dll |