前田です。 In message "[ruby-list:6807] Re: Mutex/ConditionVariable/Queue" 石塚圭樹 <keiju / rational.com> wrote: |>|それもありますが. 本来必要のない実装がMutexに入り込んでいますよね. |> |>たしかにMutexだけ使ってConditionVariableを使わない人にとっては |>必要ないですね。 |>Mutexじゃなくて別のクラス名にした方がよいのかな...。 | |ですかねえ... 考えてみたんですけどMixinにしようかなと思います。 obj.extend(MonitorMixin) # monitorかmoniterかどっちでしたっけ?(^^; cond = obj.condition_variable # ConditionVariableを生成 Thread.start { obj.synchronize { ... cond.wait } } ... obj.synchronize { ... cond.signal } これだとJavaと違って、ロックはリソースに統合されてますけど 条件変数の方は複数にできますよね。 synchronizeはネストできるようにしないと不便そうですね。 -- 前田 修吾