るりまサーチ

最速Rubyリファレンスマニュアル検索!
252件ヒット [201-252件を表示] (0.009秒)
トップページ > クエリ:synchronize[x]

別のキーワード

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

検索結果

<< < 1 2 3 >>

Thread::ConditionVariable#broadcast -> self (12.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 (12.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
# =>...

Mutex (6.0)

Mutex(Mutal Exclusion = 相互排他ロック)は共有データを並行アクセスから保護する ためにあります。Mutex の典型的な使い方は(m を Mutex オブジェクトとします):

...的な使い方は(m を Mutex オブジェクトとします):

m.lock
begin
# m によって保護されたクリティカルセクション
ensure
m.unlock
end

または、より簡単に

m.synchronize {
# m によって保護されたクリティカルセクション
}...

Thread.exclusive { ... } -> object (6.0)

VM グローバルの Mutex をロックし、ブロックを実行します。

...ラスメソッドの挙動は 1.8 以前とは違います。
Thread.exclusive は VM グローバルの Thread::MUTEX_FOR_THREAD_EXCLUSIVE の
synchronize
を呼び出しているだけで、Thread.exclusive していないスレッドは動きます。
Mutex や Monitor などの他の排他制...
...ラスメソッドの挙動は 1.8 以前とは違います。
Thread.exclusive は VM グローバルの Thread::MUTEX_FOR_THREAD_EXCLUSIVE の
synchronize
を呼び出しているだけで、Thread.exclusive していないスレッドは動きます。
Thread::Mutex や Monitor などの他の排...
...実行します。

このクラスメソッドの挙動は 1.8 以前とは違います。
Thread.exclusive は VM グローバルの Mutex の
synchronize
を呼び出しているだけで、Thread.exclusive していないスレッドは動きます。
Thread::Mutex や Monitor などの他の排...

Thread::Mutex (6.0)

Mutex(Mutal Exclusion = 相互排他ロック)は共有データを並行アクセスから保護する ためにあります。Mutex の典型的な使い方は(m を Mutex オブジェクトとします):

...的な使い方は(m を Mutex オブジェクトとします):

m.lock
begin
# m によって保護されたクリティカルセクション
ensure
m.unlock
end

または、より簡単に

m.synchronize {
# m によって保護されたクリティカルセクション
}...

絞り込み条件を変える

monitor (6.0)

スレッドの同期機構としてのモニター機能を提供するクラスです。 また同じスレッドから何度も lock できる Mutex としての機能も提供します。

...したスレッドを Mutex 側が覚えていて
* そのスレッドがもう一度 lock しようとしてもブロックしない
* synchronize は lock していなかったら通常どおり、
自分が lock していたら ただ yield するだけ (lock/unlockもしない)...
<< < 1 2 3 >>