Starvation
スタベーション(餓死)は、スケジューリングポリシーやロック競合のせいでスレッドが長期間リソースを獲得できない状態である。デッドロックではないが、公平性が失われる。
目的
並行処理における飢餓による不公平さとその防御を理解する。スケジューリングの公平性の問題である。
メカニズム
高優先度スレッドが絶えず割り込むか、ロック競合で低優先度スレッドが無期限に待たされ続ける。防御策はフェアロック(FIFO)、優先度エイジング、ロック保持時間の制限である。
ユースケース
- 並行処理のフェアネス
- スケジューリングの分析
- ロックの設計