レースコンディション - CI/CD用語集の定義
レースコンディションは、並行コードにおけるタイミング依存のバグで、同期されないアクセスが非決定的な結果を生みます。
レースコンディション は、結果が並行処理の予測不可能なタイミングに依存するバグです。たとえば 2 つのスレッドが同期なしで同じ変数に書き込む場合などです。結果は実行のたびに変わります。
レースコンディションは、結果が並行処理の予測不可能なタイミングに依存するバグです。たとえば 2 つのスレッドが同期なしで同じ変数に書き込む場合などです。結果は実行のたびに変わります。
CI において
レースコンディションはフレーキーなテストの最大の原因です。高速なローカルマシンでは通り、負荷が高くスケジューリングの異なる runner では失敗します。レース検出器 (go test -race、ThreadSanitizer) で専用の job を実行し、それらを決定的に露呈させてください。
関連ガイド
Deadlock - CI/CD Glossary DefinitionDeadlock: A deadlock occurs when two or more threads each wait for a resource the other holds, so none can pr…
Thread Safety - CI/CD Glossary DefinitionThread Safety: Thread safety is the property of code that behaves correctly when accessed by multiple threads…
Concurrency - CI/CD Glossary DefinitionConcurrency: Concurrency is structuring a program so multiple tasks make progress over overlapping time perio…