タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

Rubyとmonitorに関するsuzukaze7のブックマーク (1)

  • module MonitorMixin (Ruby 1.8.7)

    クラスの継承リスト: MonitorMixin 要約 スレッドの同期機構としてのモニター機能を提供するモジュールです。 クラスに Module#include したり、オブジェクトに Object#extend したりすることでそのクラス/オブジェクトに モニタ機能を追加します。 例 消費者、生産者問題の例 require 'monitor' buf = [] buf.extend(MonitorMixin) # 配列にモニタ機能を追加 empty_cond = buf.new_cond # 配列が空であるかないかを通知する条件変数 # consumer Thread.start do loop do buf.synchronize do # ロックする empty_cond.wait_while { buf.empty? } # 配列が空である間はロックを開放して待つ print buf

  • 1