るりまサーチ

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

別のキーワード

  1. _builtin list
  2. ftp list
  3. net/ftp list
  4. benchmark list
  5. cgi scrolling_list

クラス

キーワード

検索結果

<< 1 2 > >>

SignalException.new(sig_name) -> SignalException (18135.0)

引数で指定したシグナルに関する SignalException オブジェクトを生成して返 します。

...引数で指定したシグナルに関する SignalException オブジェクトを生成して返
します。

引数は Signal.#list に含まれるもののいずれかを指定する必要があり
ます。

@param sig_name シグナル名を Symbol オブジェクト、文字列のいずれ...
...ます。

//emlist[例][ruby]{
signal_number = Signal.list["INT"]
se = SignalException.new(signal_number) # => #<SignalException: SIGINT>
se.signo # => 2
//}

//emlist[例][ruby]{
se = SignalException.new("INT") # => #<SignalException: SIGINT>
se.signm # => "SIGINT"
//}

@see Signal.#list...

SignalException.new(sig_number) -> SignalException (18135.0)

引数で指定したシグナルに関する SignalException オブジェクトを生成して返 します。

...引数で指定したシグナルに関する SignalException オブジェクトを生成して返
します。

引数は Signal.#list に含まれるもののいずれかを指定する必要があり
ます。

@param sig_name シグナル名を Symbol オブジェクト、文字列のいずれ...
...ます。

//emlist[例][ruby]{
signal_number = Signal.list["INT"]
se = SignalException.new(signal_number) # => #<SignalException: SIGINT>
se.signo # => 2
//}

//emlist[例][ruby]{
se = SignalException.new("INT") # => #<SignalException: SIGINT>
se.signm # => "SIGINT"
//}

@see Signal.#list...

SignalException.new(sig_number, sig_name) -> SignalException (18135.0)

引数で指定したシグナルに関する SignalException オブジェクトを生成して返 します。

...引数で指定したシグナルに関する SignalException オブジェクトを生成して返
します。

引数は Signal.#list に含まれるもののいずれかを指定する必要があり
ます。

@param sig_name シグナル名を Symbol オブジェクト、文字列のいずれ...
...ます。

//emlist[例][ruby]{
signal_number = Signal.list["INT"]
se = SignalException.new(signal_number) # => #<SignalException: SIGINT>
se.signo # => 2
//}

//emlist[例][ruby]{
se = SignalException.new("INT") # => #<SignalException: SIGINT>
se.signm # => "SIGINT"
//}

@see Signal.#list...

ThreadGroup.new -> ThreadGroup (18133.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:0x007...

Thread.list -> [Thread] (18115.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 (115.0)

配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。

...では
ないことに注意してください。
buffer のサイズ(capacity)が足りなければ、packはメモリを確保します。

//emlist[例][ruby]{
['!'].pack('@1a', buffer: 'abc') # => "a!"
['!'].pack('@5a', buffer: 'abc') # => "abc\u0000\u0000!"
//}

@param template 自身のバ...
...ロトコルなどに適切)
//emlist{
n: big endian unsigned 16bit
N: big endian unsigned 32bit
v: little endian unsigned 16bit
V: little endian unsigned 32bit
//}

: エンディアン依存、整数サイズ依存 (C の構造体などに適切)
//emlist{
s!: signed short
S!: unsigned...
...stdint.h にある厳密な幅を持つ整数型に適切)
//emlist{
s: int16_t
S: uint16_t
l: int32_t
L: uint32_t
q: int64_t
Q: uint64_t
//}

: エンディアンの強制指定(バイナリ解析などに適切)
//emlist{
S>: big endian unsigned 16bit(nと同じ)
s>: big endian...

Thread::ConditionVariable (56.0)

スレッドの同期機構の一つである状態変数を実現するクラスです。

...レッド a に対して条件が成立したことを通知します。これが典型的な
使用例です。

mutex = Mutex.new
cv = ConditionVariable.new

a = Thread.start {
mutex.synchronize {
...
while (条件が満たされない)
cv.wait(m...
...

require 'thread'

class TinyQueue
def initialize(max=2)
@max = max
@full = ConditionVariable.new
@empty = ConditionVariable.new
@mutex = Mutex.new
@q = []
end

def count
@q.size
end

def enq(v)
@mutex.synchronize{
@full.w...
...E__ == $0
q = TinyQueue.new(1)
foods = 'Apple Banana Strawberry Udon Rice Milk'.split
l = []

th = Thread.new {
for obj in foods
q.send(obj)
print "sent ", obj, "\n"
end
q.send nil
}

l.push th

th = Thread.new {
while obj = q.recv...

Object#respond_to?(name, include_all = false) -> bool (50.0)

オブジェクトがメソッド name を持つとき真を返します。

...) を指定した事になります。

//emlist[][ruby]{
class F
def hello
"Bonjour"
end
end

class D
private
def hello
"Guten Tag"
end
end
list
= [F.new,D.new]

list
.each{|it| puts it.hello if it.respond_to?(:hello)}
#=> Bonjour

list
.each{|it| it.instance_eval("puts hello if it....
...mentedError.new
end

def finish
puts "finish"
end
end

class ImplTemplateMethod
include Template
def template_method
"implement template_method"
end
end

class NotImplTemplateMethod
include Template

# not implement template_method
end

puts ImplTemplateMethod.new.respond_to?...
...emplate_method) # => true
# NotImplementedError が発生しているが、Rubyによる実装部のため true を返す
puts NotImplTemplateMethod.new.respond_to?(:template_method) # => true
# GNU/Linux で実行。C言語による実装部のため false を返す
puts File.respond_to?(:lchmod)...

ThreadGroup (38.0)

スレッドグループを表すクラスです。グループに属する Thread をまとめて 操作することができます。

...す。

: 例:

生成したすべてのThreadが終了するのを待つ

5.times {
Thread.new { sleep 1; puts "#{Thread.current} finished" }
}

(ThreadGroup::Default.list - [Thread.current]).each {|th| th.join}

puts "all threads finished"

対象の Thread が Threa...
...(ThreadGroup::Default.list - [Thread.current]).each {|th| th.join}
end

=== ThreadGroup#freeze と ThreadGroup#enclose の違い

どちらのメソッドでも ThreadGroup#add によるスレッドの追加ができなくなる点は同じですが、
Thread.new に関して違いがあ...
...す。現在のスレッドが属する ThreadGroup が freeze
されている場合、Thread.new{ ... } はエラーになります。ThreadGroup が enclose されているだけでは、
Thread.new{ ... } はエラーになりません。生成されたスレッドは従来通り 親スレッド...

ThreadGroup#add(thread) -> self (38.0)

スレッド thread が属するグループを自身に変更します。

...enclose されている場合にも発生します。

//emlist[例][ruby]{
puts "Initial group is #{ThreadGroup::Default.list}"
# => Initial group is [#<Thread:0x4a49168 run>]

tg = ThreadGroup.new
t1 = Thread.new { sleep }
t2 = Thread.new { sleep }
puts "t1 is #{t1}" # => t1 is #<Thread:0x50bef60...
...>
puts "t2 is #{t2}" # => t2 is #<Thread:0x50beed0>
tg.add(t1)
puts "Initial group now #{ThreadGroup::Default.list}"
# => Initial group now [#<Thread:0x3039168 run>, #<Thread:0x50beed0 run>]
puts "tg group now #{tg.list}"
# => tg group now [#<Thread:0x50bef60 run>]
//}...

絞り込み条件を変える

<< 1 2 > >>