るりまサーチ

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

別のキーワード

  1. _builtin new
  2. _builtin inspect
  3. _builtin []
  4. _builtin to_s
  5. _builtin each

クラス

モジュール

キーワード

検索結果

<< 1 2 > >>

Thread#join -> self (26256.0)

スレッド self の実行が終了するまで、カレントスレッドを停止し ます。self が例外により終了していれば、その例外がカレントス レッドに対して発生します。

...スレッド self の実行が終了するまで、カレントスレッドを停止し
ます。self が例外により終了していれば、その例外がカレントス
レッドに対して発生します。

limit を指定して、limit 秒過ぎても自身が終了しない場合、nil...
...間を整数か小数で指定します。単位は秒です。

@raise ThreadError join を実行することによってデッドロックが起きる場合に発生します。またカレントスレッドを join したときにも発生します。

以下は、生成したすべてのスレ...
...ッドの終了を待つ例です。

threads = []
threads.push(Thread.new { n = rand(5); sleep n; n })
threads.push(Thread.new { n = rand(5); sleep n; n })
threads.push(Thread.new { n = rand(5); sleep n; n })

threads.each {|t| t.join}...

Thread#join(limit) -> self | nil (26256.0)

スレッド self の実行が終了するまで、カレントスレッドを停止し ます。self が例外により終了していれば、その例外がカレントス レッドに対して発生します。

...スレッド self の実行が終了するまで、カレントスレッドを停止し
ます。self が例外により終了していれば、その例外がカレントス
レッドに対して発生します。

limit を指定して、limit 秒過ぎても自身が終了しない場合、nil...
...間を整数か小数で指定します。単位は秒です。

@raise ThreadError join を実行することによってデッドロックが起きる場合に発生します。またカレントスレッドを join したときにも発生します。

以下は、生成したすべてのスレ...
...ッドの終了を待つ例です。

threads = []
threads.push(Thread.new { n = rand(5); sleep n; n })
threads.push(Thread.new { n = rand(5); sleep n; n })
threads.push(Thread.new { n = rand(5); sleep n; n })

threads.each {|t| t.join}...

Mutex#unlock -> self (8127.0)

mutex のロックを解放します。mutex のロック待ちになっていたスレッドの実行は再開されます。

...mutex のロックを解放します。mutex のロック待ちになっていたスレッドの実行は再開されます。

@return self を返します。

例:

m = Mutex.new
begin
m.lock
# critical part
ensure
m.unlock
end

Mutex はロックしたスレッド以外からロッ...
...と ThreadError が発生します。

m = Mutex.new
m.lock
Thread.new do
m.unlock # => ThreadError
end.join

@raise ThreadError self がロックされていない場合や self をロックしたス
レッド以外から呼ばれた場合に発生します。...

Thread::Mutex#unlock -> self (8127.0)

mutex のロックを解放します。mutex のロック待ちになっていたスレッドの実行は再開されます。

...mutex のロックを解放します。mutex のロック待ちになっていたスレッドの実行は再開されます。

@return self を返します。

例:

m = Mutex.new
begin
m.lock
# critical part
ensure
m.unlock
end

Mutex はロックしたスレッド以外からロッ...
...と ThreadError が発生します。

m = Mutex.new
m.lock
Thread.new do
m.unlock # => ThreadError
end.join

@raise ThreadError self がロックされていない場合や self をロックしたス
レッド以外から呼ばれた場合に発生します。...

String#split(sep = $;, limit = 0) {|s| ... } -> self (8121.0)

第 1 引数 sep で指定されたセパレータによって文字列を limit 個まで分割し、 結果を文字列の配列で返します。 ブロックを指定すると、配列を返す代わりに分割した文字列で ブロックを呼び出します。

...文字列を分割するときのセパレータのパターン
@param limit 分割する最大個数

@return ブロックを渡した場合は self、ブロックなしの場合は配列

//emlist[例][ruby]{
p " a \t b \n c".split(/\s+/) # => ["", "a", "b", "c"]

p " a \t b \n c".spli...
...列にマッチする場合は 1 文字に分割][ruby]{
p 'hi there'.split(/\s*/).join(':') # => "h:i:t:h:e:r:e"
//}

//emlist[文字列全体を 1 文字ずつに分割する例][ruby]{
p 'hi there'.split(//).join(':') # => "h:i: :t:h:e:r:e"
//}

//emlist[limit == 0 だと制限なく分割...

絞り込み条件を変える

Thread#run -> self (8109.0)

停止状態(stop)のスレッドを再開させます。 Thread#wakeup と異なりすぐにスレッドの切り替え を行います。

...

@raise ThreadError 死んでいるスレッドに対して実行すると発生します。

//emlist[例][ruby]{
a = Thread.new { puts "a"; Thread.stop; puts "c" }
sleep 0.1 while a.status!='sleep'
puts "Got here"
a.run
a.join
# => a
# => Got here
# => c
//}

@see Thread#wakeup, Thread.stop...

Thread#wakeup -> self (8109.0)

停止状態(stop)のスレッドを実行可能状態(run)にします。

...を実行可能状態(run)にします。

@raise ThreadError 死んでいるスレッドに対して実行すると発生します。

//emlist[例][ruby]{
c = Thread.new { Thread.stop; puts "hey!" }
sleep 0.1 while c.status!='sleep'
c.wakeup
c.join
# => "hey!"
//}

@see Thread#run, Thread.stop...

Thread#value -> object (8040.0)

スレッド self が終了するまで待ち(Thread#join と同じ)、 そのスレッドのブロックが返した値を返します。スレッド実行中に例外が 発生した場合には、その例外を再発生させます。

...スレッド self が終了するまで待ち(Thread#join と同じ)、
そのスレッドのブロックが返した値を返します。スレッド実行中に例外が
発生した場合には、その例外を再発生させます。

スレッドが Thread#kill によって終了した場合...
...n = rand(5); sleep n; n })
threads.push(Thread.new { n = rand(5); sleep n; n })

threads.each {|t| p t.value}

最後の行で、待ち合わせを行っていることがわかりにくいと思うなら以下
のように書くこともできます。

threads.each {|t| p t.join.value}...

Mutex#owned? -> bool (8024.0)

self がカレントスレッドによってロックされている場合に true を返します。 そうでない場合に false を返します。

...
self
がカレントスレッドによってロックされている場合に true を返します。
そうでない場合に false を返します。


//emlist[例][ruby]{
m = Mutex.new
m.owned? # => false
m.lock
Thread.new do
m.owned? # => false
end.join
m.owned? # => true
//}...

Thread::Mutex#owned? -> bool (8024.0)

self がカレントスレッドによってロックされている場合に true を返します。 そうでない場合に false を返します。

...
self
がカレントスレッドによってロックされている場合に true を返します。
そうでない場合に false を返します。


//emlist[例][ruby]{
m = Mutex.new
m.owned? # => false
m.lock
Thread.new do
m.owned? # => false
end.join
m.owned? # => true
//}...

絞り込み条件を変える

String#split(sep = $;, limit = 0) -> [String] (8021.0)

第 1 引数 sep で指定されたセパレータによって文字列を limit 個まで分割し、 結果を文字列の配列で返します。 ブロックを指定すると、配列を返す代わりに分割した文字列で ブロックを呼び出します。

...文字列を分割するときのセパレータのパターン
@param limit 分割する最大個数

@return ブロックを渡した場合は self、ブロックなしの場合は配列

//emlist[例][ruby]{
p " a \t b \n c".split(/\s+/) # => ["", "a", "b", "c"]

p " a \t b \n c".spli...
...列にマッチする場合は 1 文字に分割][ruby]{
p 'hi there'.split(/\s*/).join(':') # => "h:i:t:h:e:r:e"
//}

//emlist[文字列全体を 1 文字ずつに分割する例][ruby]{
p 'hi there'.split(//).join(':') # => "h:i: :t:h:e:r:e"
//}

//emlist[limit == 0 だと制限なく分割...

Enumerable#chunk_while {|elt_before, elt_after| ... } -> Enumerator (8014.0)

要素を前から順にブロックで評価し、その結果によって要素をチャンクに分け た(グループ化した)要素を持つEnumerator を返します。

...パラメータ elt_before、elt_after に渡し、ブロックの
評価値が偽になる所でチャンクを区切ります。

ブロックは self の長さ - 1 回呼び出されます。

@return チャンクごとの配列をブロックパラメータに渡す Enumerator
を返し...
...11, 12], [15, 16], [19, 20, 21]]
c = b.map {|a| a.length < 3 ? a : "#{a.first}-#{a.last}" }
p c # => [[1, 2], [4], "9-12", [15, 16], "19-21"]
d = c.join(",")
p d # => "1,2,4,9-12,15,16,19-21"

# 増加のみの部分配列ごとに分ける。
a = [0, 9, 2, 2, 3, 2, 7, 5, 9, 5]
p a.chunk_while {|i,...
<< 1 2 > >>