るりまサーチ

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

別のキーワード

  1. _builtin -
  2. open-uri open
  3. irb/input-method new
  4. irb/input-method gets
  5. matrix -

ライブラリ

クラス

モジュール

キーワード

検索結果

<< 1 2 > >>

Thread#join -> self (18355.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 (18355.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}...

Set#disjoint?(set) -> bool (6229.0)

self と set が互いに素な集合である場合に true を返します。

...
self
と set が互いに素な集合である場合に true を返します。

逆に self と set の共通集合かを確認する場合には Set#intersect? を
使用します。

@param self Set オブジェクトを指定します。
@raise ArgumentError 引数が Set オブジェクトで...
...ない場合に発生します。

//emlist[][ruby]{
require 'set'
p Set[1, 2, 3].disjoint? Set[3, 4] # => false
p Set[1, 2, 3].disjoint? Set[4, 5] # => true
//}

@see Set#intersect?...

String#split(sep = $;, limit = 0) {|s| ... } -> self (232.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...
...
//}

//emlist[括弧を含む正規表現][ruby]{
p '1-10,20'.split(/([-,])/) # => ["1", "-", "10", ",", "20"]
//}

//emlist[正規表現が空文字列にマッチする場合は 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 だと制限なく分割、配列末尾の空文字列は取り除かれる][ruby]{
p "a,b,c,,,".split(/,/, 0) # => ["a", "b", "c"]
//}

//emlist[limit 省略時は 0...

Mutex#unlock -> self (226.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 をロックしたス
レッド以外から呼ばれた場合に発生します。...

絞り込み条件を変える

OptionParser#on_tail(*arg, &block) -> self (226.0)

オプションを取り扱うためのブロックを自身の持つリストの最後に登録します。

...す。

-
-version や --help の説明をサマリの最後に表示したい時に便利です。

@param arg OptionParser#on と同様です。

@param block OptionParser#on と同様です。

//emlist[例][ruby]{
require "optparse"

opts = OptionParser.new do |opts|
opts.on_head("-i", "--init"...
...)
opts.on("-u", "--update")
opts.on_tail("-h", "--help")
end

puts opts.help

# => Usage: test [options]
# -i, --init
# -u, --update
# -h, --help
//}

//emlist[例][ruby]{
require "optparse"

opts = OptionParser.new
opts.on_tail("-h", "--help", "Show this message") do
puts opts
exit...
...end

opts.on_tail("--version", "Show version") do
puts OptionParser::Version.join('.')
exit
end
//}

@see OptionParser#on, OptionParser#on_head...

Thread::Mutex#unlock -> self (226.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#run -> self (208.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 (208.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...

Enumerable#slice_when {|elt_before, elt_after| bool } -> Enumerator (149.0)

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

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

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

@return チャンクごとの配列をブロックパラメータに渡す Enumerator
を返します...
..."#{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"

# ソート済の配列を近い値(差が6以内)の部分配列ごとに分ける。
a = [3, 11, 14, 25, 28, 29, 29, 41, 55, 57]
p a.slice_when {|i, j| 6 < j - i }.to_a
#...

絞り込み条件を変える

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

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

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

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

@return チャンクごとの配列をブロックパラメータに渡す Enumerator
を返します...
...2], [4], [9, 10, 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....
<< 1 2 > >>