背景

定義

Lockがfirst-come-first-servedである条件

  • lock習得処理をdoorway sectionwating sectionにわけ、なとき、first-come-first-servedという
    • doorway section () : フラグを立てるなど、他スレッドの実行状態に関係なく進行できる部分.
      • 有限の決まったステップ数で終わる(ループのないコードの部分など。ループがあってもこれを提供するものもあるらしい?(kekeho))
      • Bounded wait-free特性を持つ。
    • wating: 他スレッドの状態によって待機が必要な部分
      • unboundedなステップ数がかかる
    • 「スレッドBがdoorwayを始める前にスレッドAがdoorwayを終了したら、AがBに追い越されないとき、first-come-first-reservedといえる」という感じ