種類
- 特異メソッド (5)
- インスタンスメソッド (4)
- クラス (3)
クラス
- Array (2)
- Object (1)
- SignalException (3)
- Thread (1)
- ThreadGroup (2)
キーワード
- ConditionVariable (1)
- SizedQueue (1)
- ThreadGroup (1)
- add (1)
- pack (2)
-
respond
_ to? (1)
検索結果
先頭5件
-
SignalException
. new(sig _ name) -> SignalException (54406.0) -
引数で指定したシグナルに関する SignalException オブジェクトを生成して返 します。
引数で指定したシグナルに関する SignalException オブジェクトを生成して返
します。
引数は Signal.#list に含まれるもののいずれかを指定する必要があり
ます。
@param sig_name シグナル名を Symbol オブジェクト、文字列のいずれ
かで指定します。
@param sig_number シグナル番号を指定します。整数以外のオブジェクトを指
定した場合は to_int メソッドによる暗黙の型変換を試み
ます。
//emlist[例][rub... -
SignalException
. new(sig _ number) -> SignalException (54406.0) -
引数で指定したシグナルに関する SignalException オブジェクトを生成して返 します。
引数で指定したシグナルに関する SignalException オブジェクトを生成して返
します。
引数は Signal.#list に含まれるもののいずれかを指定する必要があり
ます。
@param sig_name シグナル名を Symbol オブジェクト、文字列のいずれ
かで指定します。
@param sig_number シグナル番号を指定します。整数以外のオブジェクトを指
定した場合は to_int メソッドによる暗黙の型変換を試み
ます。
//emlist[例][rub... -
SignalException
. new(sig _ number , sig _ name) -> SignalException (54406.0) -
引数で指定したシグナルに関する SignalException オブジェクトを生成して返 します。
引数で指定したシグナルに関する SignalException オブジェクトを生成して返
します。
引数は Signal.#list に含まれるもののいずれかを指定する必要があり
ます。
@param sig_name シグナル名を Symbol オブジェクト、文字列のいずれ
かで指定します。
@param sig_number シグナル番号を指定します。整数以外のオブジェクトを指
定した場合は to_int メソッドによる暗黙の型変換を試み
ます。
//emlist[例][rub... -
ThreadGroup
. new -> ThreadGroup (54400.0) -
新たな ThreadGroup を生成して返します。
新たな ThreadGroup を生成して返します。
//emlist[例][ruby]{
thread_group = ThreadGroup.new
thread_group.add Thread.new { sleep 0.1; Thread.new { sleep 1 }; sleep 1 }
thread_group.add Thread.new { sleep 2 }
sleep 0.5
thread_group.list # => [#<Thread:0x007fc6f1842d70 sleep>, #<Thread:0x007fc6f1842c80 sleep>, #<Th... -
Thread
. list -> [Thread] (54346.0) -
全ての生きているスレッドを含む配列を生成して返します。aborting 状態であるスレッド も要素に含まれます。
全ての生きているスレッドを含む配列を生成して返します。aborting 状態であるスレッド
も要素に含まれます。
Thread.new do
sleep
end
sleep 0.1
p Thread.list #=> [#<Thread:0x40377a54 sleep>, #<Thread:0x4022e6fc run>] -
Array
# pack(template , buffer: String . new) -> String (346.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
配列の内容を template で指定された文字列にしたがって、
バイナリとしてパックした文字列を返します。
テンプレートは
型指定文字列とその長さ(省略時は1)を並べたものです。長さと
して * が指定された時は「残りのデータ全て」の長さを
表します。型指定文字は以下で述べる pack テンプレート文字列の通りです。
buffer が指定されていれば、バッファとして使って返値として返します。
もし template の最初にオフセット (@) が指定されていれば、
結果はオフセットの後ろから詰められます。
buffer の元の内容がオフセットより長ければ、
オフセットより後ろの部分は上... -
Thread
:: ConditionVariable (169.0) -
スレッドの同期機構の一つである状態変数を実現するクラスです。
スレッドの同期機構の一つである状態変数を実現するクラスです。
以下も ConditionVariable を理解するのに参考になります。
https://ruby-doc.com/docs/ProgrammingRuby/html/tut_threads.html#UF
=== Condition Variable とは
あるスレッド A が排他領域で動いていたとします。スレッド A は現在空いていない
リソースが必要になったので空くまで待つことにしたとします。これはうまくいきません。
なぜなら、スレッド A は排他領域で動いているわけですから、他のスレッドは動くことが
できません。リ... -
Object
# respond _ to?(name , include _ all = false) -> bool (151.0) -
オブジェクトがメソッド name を持つとき真を返します。
オブジェクトがメソッド name を持つとき真を返します。
オブジェクトが メソッド name を持つというのは、
オブジェクトが メソッド name に応答できることをいいます。
Windows での Process.fork や GNU/Linux での File.lchmod の
ような NotImplementedError が発生する場合は false を返します。
※ NotImplementedError が発生する場合に false を返すのは
Rubyの組み込みライブラリや標準ライブラリなど、C言語で実装されているメソッドのみです。
Rubyで実装されたメソッドで N... -
ThreadGroup (115.0)
-
スレッドグループを表すクラスです。グループに属する Thread をまとめて 操作することができます。
スレッドグループを表すクラスです。グループに属する Thread をまとめて
操作することができます。
Thread は必ずいずれかひとつのスレッドグループに属します。
生成されたばかりの Thread は、生成した Thread のグループを引き継ぎます。
メインスレッドはデフォルトでは ThreadGroup::Default に属します。
: 例:
生成したすべてのThreadが終了するのを待つ
5.times {
Thread.new { sleep 1; puts "#{Thread.current} finished" }
}
... -
ThreadGroup
# add(thread) -> self (115.0) -
スレッド thread が属するグループを自身に変更します。
スレッド thread が属するグループを自身に変更します。
@param thread 自身に加えたいスレッドを指定します。
@raise ThreadError 自身が freeze されているか enclose されている場合に、発生します。また引数 thread が属する ThreadGroup が freeze されているか enclose されている場合にも発生します。
//emlist[例][ruby]{
puts "Initial group is #{ThreadGroup::Default.list}"
# => Initial group is [#<Thread... -
Array
# pack(template) -> String (46.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
配列の内容を template で指定された文字列にしたがって、
バイナリとしてパックした文字列を返します。
テンプレートは
型指定文字列とその長さ(省略時は1)を並べたものです。長さと
して * が指定された時は「残りのデータ全て」の長さを
表します。型指定文字は以下で述べる pack テンプレート文字列の通りです。
buffer が指定されていれば、バッファとして使って返値として返します。
もし template の最初にオフセット (@) が指定されていれば、
結果はオフセットの後ろから詰められます。
buffer の元の内容がオフセットより長ければ、
オフセットより後ろの部分は上... -
Thread
:: SizedQueue (43.0) -
サイズの最大値を指定できる Thread::Queue です。
サイズの最大値を指定できる Thread::Queue です。
=== 例
283 より。q をサイズ 1 の SizedQueue オブジェクトに
することによって、入力される行と出力される行が同じ順序になります。
q = [] にすると入力と違った順序で行が出力されます。
require 'thread'
q = SizedQueue.new(1)
th = Thread.start {
while line = q.pop
print line
end
}
while l = gets
q.push(l)
end
...