るりまサーチ

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

別のキーワード

  1. fiddle ruby_free
  2. rbconfig ruby
  3. fiddle build_ruby_platform
  4. rake ruby
  5. rubygems/defaults ruby_engine

ライブラリ

クラス

キーワード

検索結果

Thread::Mutex#sleep(timeout = nil) -> Integer (21262.0)

与えられた秒数の間ロックを解除してスリープして、実行後にまたロックします。

...リープして、実行後にまたロックします。

@
param timeout スリープする秒数を指定します。省略するとスリープし続けます。

@
return スリープしていた秒数を返します。

@
raise ThreadError 自身がカレントスレッドによってロックさ...
...グナルを受信した場合などに実行が再
開(spurious wakeup)される場合がある点に注意してください。

//emlist[例][ruby]{
m = Mutex.new
th = Thread.new do
m.lock
m.sleep(2)
end

th.status # => "run"
sleep
1
th.status # => "sleep"
sleep
1
th.status # => false
//}...
...にまたロックします。

@
param timeout スリープする秒数を指定します。省略するとスリープし続けます。

@
return タイムアウトした時は nil を、それ以外はスリープしていた秒数を返します。

@
raise ThreadError 自身がカレントスレ...

Mutex#sleep(timeout = nil) -> Integer (18262.0)

与えられた秒数の間ロックを解除してスリープして、実行後にまたロックします。

...リープして、実行後にまたロックします。

@
param timeout スリープする秒数を指定します。省略するとスリープし続けます。

@
return スリープしていた秒数を返します。

@
raise ThreadError 自身がカレントスレッドによってロックさ...
...グナルを受信した場合などに実行が再
開(spurious wakeup)される場合がある点に注意してください。

//emlist[例][ruby]{
m = Mutex.new
th = Thread.new do
m.lock
m.sleep(2)
end

th.status # => "run"
sleep
1
th.status # => "sleep"
sleep
1
th.status # => false
//}...

Thread#priority -> Integer (9237.0)

スレッドの優先度を返します。この値が大きいほど優先度が高くなります。 メインスレッドのデフォルト値は 0 です。新しく生成されたスレッドは親スレッドの priority を引き継ぎます。

...
priority を引き継ぎます。

@
param val スレッドの優先度を指定します。プラットフォームに依存します。

//emlist[例][ruby]{
Thread.current.priority # => 0

count1 = count2 = 0
a = Thread.new do
loop { count1 += 1 }
end

a.priority = -1

b = Thread.ne...
...w do
loop { count2 += 1 }
end

b.priority = -2
count1 = count2 = 0 # reset
sleep
1 # => 1
count1 # => 13809431
count2 # => 11571921
//}...

Thread#priority=(val) (9237.0)

スレッドの優先度を返します。この値が大きいほど優先度が高くなります。 メインスレッドのデフォルト値は 0 です。新しく生成されたスレッドは親スレッドの priority を引き継ぎます。

...
priority を引き継ぎます。

@
param val スレッドの優先度を指定します。プラットフォームに依存します。

//emlist[例][ruby]{
Thread.current.priority # => 0

count1 = count2 = 0
a = Thread.new do
loop { count1 += 1 }
end

a.priority = -1

b = Thread.ne...
...w do
loop { count2 += 1 }
end

b.priority = -2
count1 = count2 = 0 # reset
sleep
1 # => 1
count1 # => 13809431
count2 # => 11571921
//}...

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

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

...された
スレッドは Thread::ConditionVariable#wait
で指定した mutex のロックを試みます。

@
return 常に self を返します。

//emlist[例][ruby]{
mutex = Mutex.new
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
# => a2
# => a2
# => a2
//}...

絞り込み条件を変える

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

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

...された
スレッドは Thread::ConditionVariable#wait
で指定した mutex のロックを試みます。

@
return 常に self を返します。

//emlist[例][ruby]{
mutex = Mutex.new
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
# => a2
//}...