るりまサーチ

最速Rubyリファレンスマニュアル検索!
110件ヒット [1-100件を表示] (0.104秒)

別のキーワード

  1. mutex_m synchronize
  2. mutex_m mu_synchronize
  3. monitor synchronize
  4. monitor mon_synchronize
  5. pstore synchronize

ライブラリ

モジュール

キーワード

検索結果

<< 1 2 > >>

Mutex#synchronize { ... } -> object (18108.0)

mutex をロックし、ブロックを実行します。実行後に必ず mutex のロックを解放します。

...また、Signal.#trap に指定したハンドラ内で実行
した場合に発生します。

//emlist[例][ruby]{
m = Mutex.new
result = m.synchronize do
m.locked? # => true
# critical part
"result"
end
m.locked? # => false
result # => "result"
//}...

Thread::Mutex#synchronize { ... } -> object (18108.0)

mutex をロックし、ブロックを実行します。実行後に必ず mutex のロックを解放します。

...また、Signal.#trap に指定したハンドラ内で実行
した場合に発生します。

//emlist[例][ruby]{
m = Mutex.new
result = m.synchronize do
m.locked? # => true
# critical part
"result"
end
m.locked? # => false
result # => "result"
//}...

Monitor#synchronize { ... } -> object (18103.0)

モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。

モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。

ブロックの評価値を返り値として返します。

@see Monitor#enter

MonitorMixin#synchronize { ... } -> object (18103.0)

モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。

モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。

ブロックの評価値を返り値として返します。

@see MonitorMixin#mon_enter

Mutex_m#synchronize { ... } -> object (18103.0)

self のロックを取得し、ブロックを実行します。実行後に必ずロックを解放します。

self のロックを取得し、ブロックを実行します。実行後に必ずロックを解放します。

ブロックで最後に評価した値を返します。

絞り込み条件を変える

Sync_m#synchronize(mode = EX) {...} -> object (18103.0)

ロック状態を変更してブロックを実行します。 ブロックの実行結果を返します。

ロック状態を変更してブロックを実行します。
ブロックの実行結果を返します。

@param mode 変更後の状態を指定します。
通常、 Sync_m::UN, Sync_m::EX, Sync_m::SH のどれかを指定します。

PStore::DummyMutex#synchronize { ... } -> object (18102.0)

与えられたブロックを評価するだけで何もしません。

与えられたブロックを評価するだけで何もしません。

Monitor#mon_synchronize { ... } -> object (6103.0)

モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。

モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。

ブロックの評価値を返り値として返します。

@see Monitor#enter

MonitorMixin#mon_synchronize { ... } -> object (6103.0)

モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。

モニターをロックし、ブロックを実行します。実行後に必ずモニターのロックを解放します。

ブロックの評価値を返り値として返します。

@see MonitorMixin#mon_enter

Mutex_m#mu_synchronize { ... } -> object (6103.0)

self のロックを取得し、ブロックを実行します。実行後に必ずロックを解放します。

self のロックを取得し、ブロックを実行します。実行後に必ずロックを解放します。

ブロックで最後に評価した値を返します。

絞り込み条件を変える

Sync_m#sync_synchronize(mode = EX) {...} -> object (6103.0)

ロック状態を変更してブロックを実行します。 ブロックの実行結果を返します。

ロック状態を変更してブロックを実行します。
ブロックの実行結果を返します。

@param mode 変更後の状態を指定します。
通常、 Sync_m::UN, Sync_m::EX, Sync_m::SH のどれかを指定します。

Thread::ConditionVariable#broadcast -> self (13.0)

状態変数を待っているスレッドをすべて再開します。再開された スレッドは Thread::ConditionVariable#wait で指定した mutex のロックを試みます。

...w
cv = ConditionVariable.new
flg = true

3.times {
Thread.start {
mutex.synchronize {
puts "a1"
while (flg)
cv.wait(mutex)
end
puts "a2"
}
}
}

Thread.start {
mutex.synchronize {
flg = false
cv.broadcast
}
}

sleep 1

# => a1
# => a1
# => a1
#...

Thread::ConditionVariable#signal -> self (13.0)

状態変数を待っているスレッドを1つ再開します。再開された スレッドは Thread::ConditionVariable#wait で指定した mutex のロックを試みます。

...w
cv = ConditionVariable.new
flg = true

3.times {
Thread.start {
mutex.synchronize {
puts "a1"
while (flg)
cv.wait(mutex)
end
puts "a2"
}
}
}

Thread.start {
mutex.synchronize {
flg = false
cv.signal
}
}

sleep 1

# => a1
# => a1
# => a1
# =>...
<< 1 2 > >>