インテル® C++ コンパイラー 17.0 デベロッパー・ガイドおよびリファレンス
さまざまな同期メカニズムをハードウェアやオペレーティング・システム上で利用することができます。
ロックに関する次の用語と説明を理解しておくと良いでしょう。
次の用語は同じ意味で使用されます: ロック (または "mutex") の "取得"、"突入"、"ロックする"。
ロックを取得したストランド (またはスレッド) は、ロックを "所有" しているといいます。
ロックを所有しているストランドのみがロックを "解放"、"終了"、"アンロック" することができます。
一度に同じロックを所有できるストランドは 1 つだけです。
tbb::mutex は OS の mutex 操作を使用して実装されています。
ロック競合は、並列プログラムでパフォーマンス問題を引き起こします。また、ロックはデータ競合を解決しますが、ロックを使用したプログラムは非決定的になりがちです。可能な限り、ロックは使用しないようにすることを推奨します。
これらの問題 (およびその他の問題) は、次のセクションで詳しく説明しています。