ライブラリ
クラス
-
DRb
:: DRbServer (1) - Exception (1)
- IO (8)
-
IRB
:: Context (1) - Mutex (1)
-
Net
:: IMAP (4) -
Net
:: IMAP :: ThreadMember (2) - PStore (1)
- Thread (50)
-
Thread
:: Backtrace :: Location (7) -
Thread
:: ConditionVariable (4) -
Thread
:: Queue (12) -
Thread
:: SizedQueue (9) - ThreadGroup (6)
- ThreadsWait (10)
- Tracer (4)
-
WEBrick
:: GenericServer (1) - WIN32OLE (1)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) - << (2)
-
CLOCK
_ THREAD _ CPUTIME _ ID (1) -
CP
_ THREAD _ ACP (1) -
CS
_ GNU _ LIBPTHREAD _ VERSION (1) -
CS
_ POSIX _ V7 _ THREADS _ CFLAGS (1) -
CS
_ POSIX _ V7 _ THREADS _ LDFLAGS (1) - ConditionVariable (1)
- DEBUG (1)
- DEBUG= (1)
- Default (1)
- ErrNoFinishedThread (1)
- ErrNoWaitingThread (1)
-
Init
_ Thread (1) - Location (1)
-
MUTEX
_ FOR _ THREAD _ EXCLUSIVE (1) -
NEWS for Ruby 2
. 2 . 0 (1) - Queue (1)
-
SC
_ READER _ WRITER _ LOCKS (1) -
SC
_ THREADS (1) -
SC
_ THREAD _ ATTR _ STACKADDR (1) -
SC
_ THREAD _ ATTR _ STACKSIZE (1) -
SC
_ THREAD _ CPUTIME (1) -
SC
_ THREAD _ DESTRUCTOR _ ITERATIONS (1) -
SC
_ THREAD _ KEYS _ MAX (1) -
SC
_ THREAD _ PRIORITY _ SCHEDULING (1) -
SC
_ THREAD _ PRIO _ INHERIT (1) -
SC
_ THREAD _ PRIO _ PROTECT (1) -
SC
_ THREAD _ PROCESS _ SHARED (1) -
SC
_ THREAD _ ROBUST _ PRIO _ INHERIT (1) -
SC
_ THREAD _ ROBUST _ PRIO _ PROTECT (1) -
SC
_ THREAD _ SAFE _ FUNCTIONS (1) -
SC
_ THREAD _ SPORADIC _ SERVER (1) -
SC
_ THREAD _ STACK _ MIN (1) -
SC
_ THREAD _ THREADS _ MAX (1) -
SC
_ XOPEN _ REALTIME _ THREADS (1) - SizedQueue (1)
- Thread (1)
- ThreadError (1)
- ThreadGroup (1)
- ThreadMember (1)
- ThreadsWait (1)
- [] (1)
- []= (1)
-
abort
_ on _ exception (2) -
abort
_ on _ exception= (2) -
absolute
_ path (1) - add (1)
-
add
_ trace _ func (1) - alive? (1)
-
all
_ waits (3) - backtrace (1)
-
backtrace
_ locations (3) -
base
_ label (1) - broadcast (1)
-
caller
_ locations (2) - children (1)
- clear (1)
-
client
_ thread (1) -
client
_ thread= (1) - current (1)
- deq (2)
- detach (1)
-
display
_ thread _ id (1) -
display
_ thread _ id= (1) -
display
_ thread _ id? (1) - empty? (2)
- enclose (1)
- enclosed? (1)
- enq (2)
- exclusive (1)
- exit (2)
- finished? (1)
- fork (1)
-
get
_ thread _ no (1) - group (1)
-
handle
_ interrupt (1) - inspect (2)
- join (3)
-
join
_ nowait (1) - key? (1)
- keys (1)
- kill (2)
- label (1)
- length (1)
- lineno (1)
- list (2)
- main (1)
- max (1)
- max= (1)
- new (8)
-
next
_ wait (1) -
num
_ waiting (1) - pass (1)
- path (1)
-
pending
_ interrupt? (2) - pipe (8)
-
pipeline
_ r (2) -
pipeline
_ rw (2) -
pipeline
_ start (1) -
pipeline
_ w (1) - pop (2)
- popen2 (1)
- popen2e (1)
- popen3 (2)
- priority (1)
- priority= (1)
- push (2)
- raise (1)
-
rb
_ gc _ mark _ threads (1) -
rb
_ thread _ abort _ exc (1) -
rb
_ thread _ abort _ exc _ set (1) -
rb
_ thread _ alive _ p (1) -
rb
_ thread _ alloc (1) -
rb
_ thread _ alone (1) -
rb
_ thread _ aref (1) -
rb
_ thread _ aset (1) -
rb
_ thread _ atfork (1) -
rb
_ thread _ check (1) -
rb
_ thread _ cleanup (1) -
rb
_ thread _ create (1) -
rb
_ thread _ critical _ get (1) -
rb
_ thread _ critical _ set (1) -
rb
_ thread _ current (1) -
rb
_ thread _ dead (1) -
rb
_ thread _ deadlock (1) -
rb
_ thread _ exit (1) -
rb
_ thread _ fd _ close (1) -
rb
_ thread _ fd _ writable (1) -
rb
_ thread _ initialize (1) -
rb
_ thread _ inspect (1) -
rb
_ thread _ interrupt (1) -
rb
_ thread _ join (1) -
rb
_ thread _ join _ m (1) -
rb
_ thread _ key _ p (1) -
rb
_ thread _ keys (1) -
rb
_ thread _ kill (1) -
rb
_ thread _ list (1) -
rb
_ thread _ local _ aref (1) -
rb
_ thread _ local _ aset (1) -
rb
_ thread _ main (1) -
rb
_ thread _ pass (1) -
rb
_ thread _ priority (1) -
rb
_ thread _ priority _ set (1) -
rb
_ thread _ raise (1) -
rb
_ thread _ raise _ m (1) -
rb
_ thread _ ready (1) -
rb
_ thread _ remove (1) -
rb
_ thread _ restore _ context (1) -
rb
_ thread _ run (1) -
rb
_ thread _ s _ abort _ exc (1) -
rb
_ thread _ s _ abort _ exc _ set (1) -
rb
_ thread _ s _ kill (1) -
rb
_ thread _ s _ new (1) -
rb
_ thread _ safe _ level (1) -
rb
_ thread _ save _ context (1) -
rb
_ thread _ schedule (1) -
rb
_ thread _ signal _ raise (1) -
rb
_ thread _ sleep (1) -
rb
_ thread _ sleep _ forever (1) -
rb
_ thread _ start (1) -
rb
_ thread _ start _ 0 (1) -
rb
_ thread _ start _ timer (1) -
rb
_ thread _ status (1) -
rb
_ thread _ stop (1) -
rb
_ thread _ stop _ p (1) -
rb
_ thread _ stop _ timer (1) -
rb
_ thread _ trap _ eval (1) -
rb
_ thread _ value (1) -
rb
_ thread _ wait _ fd (1) -
rb
_ thread _ wait _ for (1) -
rb
_ thread _ wait _ other _ threads (1) -
rb
_ thread _ wakeup (1) -
rb
_ thread _ yield (1) -
rinda
/ rinda (1) -
ruby 1
. 6 feature (1) -
ruby 1
. 8 . 3 feature (1) -
ruby 1
. 8 . 4 feature (1) -
ruby 1
. 8 . 5 feature (1) - run (1)
-
safe
_ level (1) - seqno (1)
-
set
_ trace _ func (1) - shift (2)
- signal (1)
- size (1)
-
stack
_ extend (1) - start (1)
- status (1)
- stop (1)
- stop? (1)
-
sync
_ ex _ locker (1) -
sync
_ ex _ locker= (1) -
sync
_ upgrade _ waiting (1) -
sync
_ waiting (1) - terminate (1)
-
thgroup
_ add (1) -
thread
_ free (1) -
thread
_ keys _ i (1) -
thread
_ mark (1) -
thread
_ status _ name (1) -
thread
_ switch (1) -
thread
_ variable? (1) -
thread
_ variable _ get (1) -
thread
_ variable _ set (1) - threads (1)
- timeout (1)
-
to
_ s (1) - tokens (1)
-
uid
_ thread (1) - value (1)
- wait (1)
- wakeup (1)
- スレッド (1)
検索結果
先頭5件
-
thread (132037.0)
-
スレッド間キューや状態変数 (condition variable) を提供するライブラリです。
スレッド間キューや状態変数 (condition variable) を提供するライブラリです。
このライブラリは Thread を拡張します。rubyインタプリタを
デバッグオプション付き($DEBUGを真)で実行したときには、
Thread.abort_on_exception を true にします。 -
Net
:: IMAP # thread(algorithm , search _ keys , charset) -> [Net :: IMAP :: ThreadMember] (73288.0) -
THREADコマンドを送り、メールボックスを検索した結果を スレッド形式の木構造で返します。
THREADコマンドを送り、メールボックスを検索した結果を
スレッド形式の木構造で返します。
THREAD コマンドは 5256 で定義されています。
詳しくはそちらを参照してください。
このコマンドは Net::IMAP#capability の返り値を見ることで
利用可能かどうか判断できます。
algorithm は木構造を決定するためのアルゴリズムを指定します。
以下の2つが利用可能です。
* "ORDEREDSUBJECT" subjectを使って平坦に区切るだけ
* "REFERENCES" どのメッセージに返事をしているかを見て木構造を作る
詳しくは 5256 を見てく... -
IRB
:: Context # thread -> Thread (73225.0) -
現在のスレッドを返します。
現在のスレッドを返します。
@see Thread.current -
DRb
. # thread -> Thread|nil (73207.0) -
プライマリサーバが動作しているスレッドを返します。
プライマリサーバが動作しているスレッドを返します。
プライマリサーバが存在しない場合は nil を返します。
@see DRb.#primary_server -
DRb
:: DRbServer # thread -> Thread (73207.0) -
サーバのメインスレッドを返します。
サーバのメインスレッドを返します。
このスレッドはクライアントからの接続を受け付けるスレッドであって、
クライアントへの応答をするスレッドではありません。 -
static void rb
_ thread _ wait _ other _ threads(void) (73201.0) -
-
Thread
# thread _ variable _ get(key) -> object | nil (72856.0) -
引数 key で指定した名前のスレッドローカル変数を返します。
引数 key で指定した名前のスレッドローカル変数を返します。
[注意]: Thread#[] でセットしたローカル変数(Fiber ローカル変数)と
異なり、Fiber を切り替えても同じ変数を返す事に注意してください。
例:
Thread.new {
Thread.current.thread_variable_set("foo", "bar") # スレッドローカル
Thread.current["foo"] = "bar" # Fiber ローカル
Fiber.new {
Fiber.yield ... -
Thread
# thread _ variable _ set(key , value) (72802.0) -
引数 key で指定した名前のスレッドローカル変数に引数 value をセットしま す。
引数 key で指定した名前のスレッドローカル変数に引数 value をセットしま
す。
[注意]: Thread#[] でセットしたローカル変数(Fiber ローカル変数)と
異なり、セットした変数は Fiber を切り替えても共通で使える事に注意してく
ださい。
//emlist[例][ruby]{
thr = Thread.new do
Thread.current.thread_variable_set(:cat, 'meow')
Thread.current.thread_variable_set("dog", 'woof')
end
thr.join ... -
Thread
# thread _ variable?(key) -> bool (72748.0) -
引数 key で指定した名前のスレッドローカル変数が存在する場合に true、そ うでない場合に false を返します。
引数 key で指定した名前のスレッドローカル変数が存在する場合に true、そ
うでない場合に false を返します。
@param key 変数名を String か Symbol で指定します。
me = Thread.current
me.thread_variable_set(:oliver, "a")
me.thread_variable?(:oliver) # => true
me.thread_variable?(:stanley) # => false
[注意]: Thread#[] でセットしたローカル変数(Fiber ローカル... -
Thread
:: MUTEX _ FOR _ THREAD _ EXCLUSIVE -> Mutex (72652.0) -
Thread.exclusive用のMutexオブジェクトです。
Thread.exclusive用のMutexオブジェクトです。 -
static void rb
_ thread _ ready(rb _ thread _ t th) (55501.0) -
-
ThreadsWait
# threads -> Array (54691.0) -
同期されるスレッドの一覧を配列で返します。
同期されるスレッドの一覧を配列で返します。
使用例
require 'thwait'
threads = []
3.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}
thall = ThreadsWait.new(*threads)
p thall.threads
#=> [#<Thread:0x21750 sleep>, #<Thread:0x216c4 sleep>, #<Thread:0x21638 sleep>] -
ThreadsWait
:: ErrNoFinishedThread (54001.0) -
nonblock がtrue でかつ、キューが空の時、発生します。
nonblock がtrue でかつ、キューが空の時、発生します。
@see ThreadsWait#next_wait -
ThreadsWait
:: ErrNoWaitingThread (54001.0) -
終了を待つスレッドが存在しない時、発生します。
終了を待つスレッドが存在しない時、発生します。
@see ThreadsWait#next_wait -
Thread
:: SizedQueue . new(max) -> Thread :: SizedQueue (42652.0) -
Thread::SizedQueue オブジェクトを生成します。
Thread::SizedQueue オブジェクトを生成します。
@param max キューのサイズの最大値です。 -
Thread
:: ConditionVariable . new -> Thread :: ConditionVariable (42604.0) -
状態変数を生成して返します。
状態変数を生成して返します。 -
Thread
:: Queue . new -> Thread :: Queue (42604.0) -
新しいキューオブジェクトを生成します。
新しいキューオブジェクトを生成します。 -
Thread
:: ConditionVariable # wait(mutex , timeout = nil) -> self (42151.0) -
mutex のロックを解放し、カレントスレッドを停止します。 Thread::ConditionVariable#signalまたは、 Thread::ConditionVariable#broadcastで送られたシグナルを 受け取ると、mutexのロックを取得し、実行状態となります。
mutex のロックを解放し、カレントスレッドを停止します。
Thread::ConditionVariable#signalまたは、
Thread::ConditionVariable#broadcastで送られたシグナルを
受け取ると、mutexのロックを取得し、実行状態となります。
@param mutex Thread::Mutex オブジェクトを指定します。
@param timeout スリープする秒数を指定します。この場合はシグナルを受け取
らなかった場合でも指定した秒数が経過するとスリープを終了
します。省略する... -
Thread
:: ConditionVariable (42091.0) -
スレッドの同期機構の一つである状態変数を実現するクラスです。
スレッドの同期機構の一つである状態変数を実現するクラスです。
以下も ConditionVariable を理解するのに参考になります。
https://ruby-doc.com/docs/ProgrammingRuby/html/tut_threads.html#UF
=== Condition Variable とは
あるスレッド A が排他領域で動いていたとします。スレッド A は現在空いていない
リソースが必要になったので空くまで待つことにしたとします。これはうまくいきません。
なぜなら、スレッド A は排他領域で動いているわけですから、他のスレッドは動くことが
できません。リ... -
Thread
:: SizedQueue # deq(non _ block = false) -> object (42091.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].eac... -
Thread
:: SizedQueue # pop(non _ block = false) -> object (42091.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].eac... -
Thread
:: SizedQueue # shift(non _ block = false) -> object (42091.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].eac... -
Thread
:: ConditionVariable # broadcast -> self (42085.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)
... -
Thread
:: ConditionVariable # signal -> self (42085.0) -
状態変数を待っているスレッドを1つ再開します。再開された スレッドは Thread::ConditionVariable#wait で指定した mutex のロックを試みます。
状態変数を待っているスレッドを1つ再開します。再開された
スレッドは 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)
... -
Thread
:: SizedQueue (42085.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
... -
Thread
:: Queue # deq(non _ block = false) -> object (42073.0) -
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}
t... -
Thread
:: Queue # pop(non _ block = false) -> object (42073.0) -
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}
t... -
Thread
:: Queue # shift(non _ block = false) -> object (42073.0) -
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}
t... -
Thread
:: Queue (42055.0) -
Queue はスレッド間の FIFO(first in first out) の通信路です。ス レッドが空のキューを読み出そうとすると停止します。キューになんら かの情報が書き込まれると実行は再開されます。
Queue はスレッド間の FIFO(first in first out) の通信路です。ス
レッドが空のキューを読み出そうとすると停止します。キューになんら
かの情報が書き込まれると実行は再開されます。
最大サイズが指定できる Queue のサブクラス Thread::SizedQueue も提供されています。
=== 例
require 'thread'
q = Queue.new
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resou... -
Thread
:: SizedQueue # <<(obj) -> () (42055.0) -
キューに与えられたオブジェクトを追加します。
キューに与えられたオブジェクトを追加します。
キューのサイズが Thread::SizedQueue#max に達している場合は、
non_block が真でなければ、キューのサイズが Thread::SizedQueue#max
より小さくなるまで他のスレッドに実行を譲ります。
その後、キューに与えられたオブジェクトを追加します。
@param obj キューに追加したいオブジェクトを指定します。
@param non_block true を与えると、キューが一杯の時に例外 ThreadError が発生します。
@see Thread::Queue#push -
Thread
:: SizedQueue # enq(obj , non _ block = false) -> () (42055.0) -
キューに与えられたオブジェクトを追加します。
キューに与えられたオブジェクトを追加します。
キューのサイズが Thread::SizedQueue#max に達している場合は、
non_block が真でなければ、キューのサイズが Thread::SizedQueue#max
より小さくなるまで他のスレッドに実行を譲ります。
その後、キューに与えられたオブジェクトを追加します。
@param obj キューに追加したいオブジェクトを指定します。
@param non_block true を与えると、キューが一杯の時に例外 ThreadError が発生します。
@see Thread::Queue#push -
Thread
:: SizedQueue # push(obj , non _ block = false) -> () (42055.0) -
キューに与えられたオブジェクトを追加します。
キューに与えられたオブジェクトを追加します。
キューのサイズが Thread::SizedQueue#max に達している場合は、
non_block が真でなければ、キューのサイズが Thread::SizedQueue#max
より小さくなるまで他のスレッドに実行を譲ります。
その後、キューに与えられたオブジェクトを追加します。
@param obj キューに追加したいオブジェクトを指定します。
@param non_block true を与えると、キューが一杯の時に例外 ThreadError が発生します。
@see Thread::Queue#push -
Thread
:: Queue # num _ waiting -> Integer (42037.0) -
キューを待っているスレッドの数を返します。
キューを待っているスレッドの数を返します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(1)
q.push(1)
t = Thread.new { q.push(2) }
sleep 0.05 until t.stop?
q.num_waiting # => 1
q.pop
t.join
//} -
Thread
:: Queue # clear -> () (42019.0) -
キューを空にします。返り値は不定です。
キューを空にします。返り値は不定です。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }
q.length # => 4
q.clear
q.length # => 0
//} -
Thread
:: Queue # empty? -> bool (42019.0) -
キューが空の時、真を返します。
キューが空の時、真を返します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
q.empty? # => true
q.push(:resource)
q.empty? # => false
//} -
Thread
:: Queue # length -> Integer (42019.0) -
キューの長さを返します。
キューの長さを返します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }
q.length # => 4
//} -
Thread
:: Queue # size -> Integer (42019.0) -
キューの長さを返します。
キューの長さを返します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }
q.length # => 4
//} -
Thread
:: SizedQueue # max=(n) (42019.0) -
キューの最大サイズを設定します。
キューの最大サイズを設定します。
@param n キューの最大サイズを指定します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(4)
q.max # => 4
q.max = 5
q.max # => 5
//} -
Thread
:: Queue # <<(value) -> () (42001.0) -
キューの値を追加します。待っているスレッドがいれば実行を再開 させます。返り値は不定です。
キューの値を追加します。待っているスレッドがいれば実行を再開
させます。返り値は不定です。 -
Thread
:: Queue # enq(value) -> () (42001.0) -
キューの値を追加します。待っているスレッドがいれば実行を再開 させます。返り値は不定です。
キューの値を追加します。待っているスレッドがいれば実行を再開
させます。返り値は不定です。 -
Thread
:: Queue # push(value) -> () (42001.0) -
キューの値を追加します。待っているスレッドがいれば実行を再開 させます。返り値は不定です。
キューの値を追加します。待っているスレッドがいれば実行を再開
させます。返り値は不定です。 -
Thread
:: SizedQueue # max -> Integer (42001.0) -
キューの最大サイズを返します。
キューの最大サイズを返します。
//emlist[例][ruby]{
q = SizedQueue.new(4)
q.max # => 4
//} -
Thread
. kill(thread) -> Thread (37393.0) -
指定したスレッド thread に対して Thread#exit を呼びます。終了したスレッドを返します。
指定したスレッド thread に対して Thread#exit を呼びます。終了したスレッドを返します。
@param thread 終了したい Thread オブジェクトを指定します。
th = Thread.new do
end
p Thread.kill(th) #=> #<Thread:0x40221bc8 dead> -
Net
:: IMAP # uid _ thread(algorithm , search _ keys , charset) -> [Net :: IMAP :: ThreadMember] (37288.0) -
THREADコマンドを送り、メールボックスを検索した結果を スレッド形式の木構造で返します。
THREADコマンドを送り、メールボックスを検索した結果を
スレッド形式の木構造で返します。
ほぼ Net::IMAP#thread と同じですが、返ってくるオブジェクトの
Net::IMAP::ThreadMember#seqno の内容が message sequence number
ではなく UID となります。
@param algorithm スレッド構造構築アルゴリズム名(文字列)
@param search_key 検索条件(文字列配列)
@param charset 検索条件の解釈に用いるCHARSET名(文字列)
@see Net::IMAP::ThreadMember... -
VALUE rb
_ thread _ run(VALUE thread) (37249.0) -
スレッド thread に実行権を渡します。
スレッド thread に実行権を渡します。 -
VALUE rb
_ thread _ wakeup(VALUE thread) (37249.0) -
停止中のスレッド thread を再開させます。
停止中のスレッド thread を再開させます。 -
Etc
:: SC _ THREAD _ THREADS _ MAX -> Integer (37246.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Net
:: IMAP # client _ thread -> Thread (37207.0) -
このメソッドは obsolete です。使わないでください。
このメソッドは obsolete です。使わないでください。 -
VALUE rb
_ thread _ local _ aref(VALUE thread , ID id) (37201.0) -
-
VALUE rb
_ thread _ local _ aset(VALUE thread , ID id , VALUE val) (37201.0) -
-
static VALUE rb
_ thread _ abort _ exc(VALUE thread) (37201.0) -
-
static VALUE rb
_ thread _ abort _ exc _ set(VALUE thread , VALUE val) (37201.0) -
-
static VALUE rb
_ thread _ alive _ p(VALUE thread) (37201.0) -
-
static VALUE rb
_ thread _ aref(VALUE thread , VALUE id) (37201.0) -
-
static VALUE rb
_ thread _ aset(VALUE thread , VALUE id , VALUE val) (37201.0) -
-
static VALUE rb
_ thread _ initialize(VALUE thread , VALUE args) (37201.0) -
-
static VALUE rb
_ thread _ inspect(VALUE thread) (37201.0) -
-
static VALUE rb
_ thread _ join _ m(int argc , VALUE *argv , VALUE thread) (37201.0) -
-
static VALUE rb
_ thread _ key _ p(VALUE thread , VALUE id) (37201.0) -
-
static VALUE rb
_ thread _ keys(VALUE thread) (37201.0) -
-
static VALUE rb
_ thread _ kill(VALUE thread) (37201.0) -
-
static VALUE rb
_ thread _ priority(VALUE thread) (37201.0) -
-
static VALUE rb
_ thread _ priority _ set(VALUE thread , VALUE prio) (37201.0) -
-
static VALUE rb
_ thread _ raise(int argc , VALUE *argv , rb _ thread _ t th) (37201.0) -
-
static VALUE rb
_ thread _ raise _ m(int argc , VALUE *argv , VALUE thread) (37201.0) -
-
static VALUE rb
_ thread _ safe _ level(VALUE thread) (37201.0) -
-
static VALUE rb
_ thread _ start _ 0(VALUE (*fn)() , void *arg , rb _ thread _ t th _ arg) (37201.0) -
-
static VALUE rb
_ thread _ status(VALUE thread) (37201.0) -
-
static VALUE rb
_ thread _ stop _ p(VALUE thread) (37201.0) -
-
static VALUE rb
_ thread _ value(VALUE thread) (37201.0) -
-
static VALUE rb
_ thread _ yield(VALUE arg , rb _ thread _ t th) (37201.0) -
-
static const char * thread
_ status _ name(enum thread _ status status) (37201.0) -
-
static int rb
_ thread _ dead(rb _ thread _ t th) (37201.0) -
-
static int rb
_ thread _ join(rb _ thread _ t th , double limit) (37201.0) -
-
static rb
_ thread _ t rb _ thread _ alloc(VALUE klass) (37201.0) -
-
static rb
_ thread _ t rb _ thread _ check(VALUE data) (37201.0) -
-
static void rb
_ thread _ remove(rb _ thread _ t th) (37201.0) -
-
static void rb
_ thread _ restore _ context(rb _ thread _ t th , int exit) (37201.0) -
スレッドを切り替えるにあたって、切り替え先のスレッド th の コンテキストを評価器に復帰します。
スレッドを切り替えるにあたって、切り替え先のスレッド th の
コンテキストを評価器に復帰します。 -
static void rb
_ thread _ save _ context(rb _ thread _ t th) (37201.0) -
スレッドを切り替えるにあたって、現在実行中のスレッド th の コンテキストを評価器から th に退避します。
スレッドを切り替えるにあたって、現在実行中のスレッド th の
コンテキストを評価器から th に退避します。 -
static void thread
_ free(rb _ thread _ t th) (37201.0) -
-
static void thread
_ mark(rb _ thread _ t th) (37201.0) -
-
Thread
# backtrace _ locations(range) -> [Thread :: Backtrace :: Location] | nil (36745.0) -
スレッドの現在のバックトレースを Thread::Backtrace::Location の配 列で返します。
スレッドの現在のバックトレースを Thread::Backtrace::Location の配
列で返します。
引数で指定した値が範囲外の場合、スレッドがすでに終了している場合は nil
を返します。
@param start 開始フレームの位置を数値で指定します。
@param length 取得するフレームの個数を指定します。
@param range 取得したいフレームの範囲を示す Range オブジェクトを指定します。
Kernel.#caller_locations と似ていますが、本メソッドは self に限定
した情報を返します。
//emlist[例][ruby]... -
Thread
# backtrace _ locations(start = 0 , length = nil) -> [Thread :: Backtrace :: Location] | nil (36745.0) -
スレッドの現在のバックトレースを Thread::Backtrace::Location の配 列で返します。
スレッドの現在のバックトレースを Thread::Backtrace::Location の配
列で返します。
引数で指定した値が範囲外の場合、スレッドがすでに終了している場合は nil
を返します。
@param start 開始フレームの位置を数値で指定します。
@param length 取得するフレームの個数を指定します。
@param range 取得したいフレームの範囲を示す Range オブジェクトを指定します。
Kernel.#caller_locations と似ていますが、本メソッドは self に限定
した情報を返します。
//emlist[例][ruby]... -
Thread
. list -> [Thread] (36676.0) -
全ての生きているスレッドを含む配列を生成して返します。aborting 状態であるスレッド も要素に含まれます。
全ての生きているスレッドを含む配列を生成して返します。aborting 状態であるスレッド
も要素に含まれます。
Thread.new do
sleep
end
sleep 0.1
p Thread.list #=> [#<Thread:0x40377a54 sleep>, #<Thread:0x4022e6fc run>] -
Thread
. fork(*arg) {|*arg| . . . } -> Thread (36661.0) -
スレッドを生成して、ブロックの評価を開始します。 生成したスレッドを返します。
スレッドを生成して、ブロックの評価を開始します。
生成したスレッドを返します。
基本的に Thread.new と同じですが、
new メソッドと違い initialize メソッドを呼びません。
@param arg 引数 arg はそのままブロックに渡されます。スレッドの開始と同時にその
スレッド固有のローカル変数に値を渡すために使用します。
@raise ThreadError 現在のスレッドが属する ThreadGroup が freeze されている場合に発生します。またブロックを与えられずに呼ばれた場合にも発生します。
注意:
例えば、以下のコー... -
Thread
. start(*arg) {|*arg| . . . } -> Thread (36661.0) -
スレッドを生成して、ブロックの評価を開始します。 生成したスレッドを返します。
スレッドを生成して、ブロックの評価を開始します。
生成したスレッドを返します。
基本的に Thread.new と同じですが、
new メソッドと違い initialize メソッドを呼びません。
@param arg 引数 arg はそのままブロックに渡されます。スレッドの開始と同時にその
スレッド固有のローカル変数に値を渡すために使用します。
@raise ThreadError 現在のスレッドが属する ThreadGroup が freeze されている場合に発生します。またブロックを与えられずに呼ばれた場合にも発生します。
注意:
例えば、以下のコー... -
VALUE rb
_ thread _ stop(void) (36649.0) -
現在実行中のスレッドを停止します。 他のスレッドから rb_thread_wakeup を呼ばれると再開します。
現在実行中のスレッドを停止します。
他のスレッドから rb_thread_wakeup を呼ばれると再開します。 -
static VALUE rb
_ thread _ pass(void) (36649.0) -
Thread#pass の実体。
Thread#pass の実体。 -
Thread
. current -> Thread (36640.0) -
現在実行中のスレッド(カレントスレッド)を返します。
現在実行中のスレッド(カレントスレッド)を返します。
p Thread.current #=> #<Thread:0x4022e6fc run> -
Thread
. main -> Thread (36640.0) -
メインスレッドを返します。
メインスレッドを返します。
p Thread.main #=> #<Thread:0x4022e6fc run> -
Thread
. new(*arg) {|*arg| . . . } -> Thread (36640.0) -
スレッドを生成して、ブロックの評価を開始します。 生成したスレッドを返します。
スレッドを生成して、ブロックの評価を開始します。
生成したスレッドを返します。
@param arg 引数 arg はそのままブロックに渡されます。スレッドの開始と同時にその
スレッド固有のローカル変数に値を渡すために使用します。
@raise ThreadError 現在のスレッドが属する ThreadGroup が freeze されている場合に発生します。またブロックを与えられずに呼ばれた場合にも発生します。
注意:
例えば、以下のコードは間違いです。スレッドの実行が開始される前に
変数 i が書き変わる可能性があるからです。
for i in 1.... -
void rb
_ thread _ schedule(void) (36637.0) -
他のスレッドに実行権を渡します。 対象の特定はできません。
他のスレッドに実行権を渡します。
対象の特定はできません。
@see rb_thread_wait_fd, rb_thread_wait_for -
Thread
# group -> ThreadGroup (36619.0) -
スレッドが属している ThreadGroup オブジェクトを返します。
スレッドが属している ThreadGroup オブジェクトを返します。
p Thread.current.group == ThreadGroup::Default
# => true -
Tracer
. display _ thread _ id -> bool (36607.0) -
真ならば、スレッド ID を表示します。 デフォルトは、真です。
真ならば、スレッド ID を表示します。
デフォルトは、真です。 -
Tracer
. display _ thread _ id? -> bool (36607.0) -
真ならば、スレッド ID を表示します。 デフォルトは、真です。
真ならば、スレッド ID を表示します。
デフォルトは、真です。 -
Net
:: IMAP # client _ thread=(th) (36604.0) -
このメソッドは obsolete です。使わないでください。
このメソッドは obsolete です。使わないでください。 -
Process
:: CLOCK _ THREAD _ CPUTIME _ ID -> Integer (36604.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Tracer
# get _ thread _ no -> Integer (36604.0) -
@todo
@todo -
Tracer
. display _ thread _ id=(flag) (36604.0) -
スレッド ID を表示するかどうかを設定します。
スレッド ID を表示するかどうかを設定します。
@param flag スレッド ID を表示するならば、真を指定します。 -
WIN32OLE
:: CP _ THREAD _ ACP -> Integer (36604.0) -
現在実行中のスレッドの既定のコードページ(3)を示します。
現在実行中のスレッドの既定のコードページ(3)を示します。
Windowsのコードページはスレッド毎に異なる値を設定できます。