擬似if文の罠

この擬似if文は一つ罠があります。
この擬似if文の内部でbreakやcontinueを呼び出すと、ブロック文はあくまでループ文の一種なので、その擬似if文に対してbreakしたりcontinueしてしまうことになってしまうのです。


break、continueする際は、なるべくラベルをつけて、明示的にどのループ文が対象なのかはっきりさせることをオススメします。

outer: 100.times{
  1..5.each{
    m.try_lock{
      break outer; // 一番外側の outer: 100.times{ から脱出
    }
    else{
  
    }
  }
}