るりまサーチ

最速Rubyリファレンスマニュアル検索!
11件ヒット [1-11件を表示] (0.123秒)
トップページ > クエリ:i[x] > クエリ:*[x] > クエリ:start[x] > クエリ:MonitorMixin[x]

別のキーワード

  1. _builtin *
  2. matrix *
  3. array *
  4. vector *
  5. bigdecimal *

ライブラリ

検索結果

MonitorMixin (44048.0)

スレッドの同期機構としてのモニター機能を提供するモジュールです。

...ラスに Module#include したり、オブジェクトに
Object#extend したりすることでそのクラス/オブジェクトに
モニタ機能を追加します。

=== 例

//emlist[消費者、生産者問題の例][ruby]{
require 'monitor'

buf = []
buf.extend(MonitorMixin) # 配列にモ...
...かないかを通知する条件変数

# consumer
Thread.start do
loop do
buf.synchronize do # ロックする
empty_cond.wait_while { buf.empty? } # 配列が空である間はロックを開放して待つ
print buf.shift # 配列が空でなくなった後ロックを取得し...
...必要があります。

//emlist[include する例][ruby]{
require 'monitor'

class MyObject
i
nclude MonitorMixin

def initialize(val)
super()
@value = val
end

def to_s
synchronize {
@value.to_s
}
end
end
//}

以下も参考になります。

*
9384
*
9386...