1799件ヒット
[1-100件を表示]
(0.022秒)
クラス
- Thread (36)
- ThreadsWait (60)
モジュール
- Etc (1596)
キーワード
-
CS
_ GNU _ LIBPTHREAD _ VERSION (12) -
CS
_ POSIX _ V7 _ THREADS _ CFLAGS (12) -
CS
_ POSIX _ V7 _ THREADS _ LDFLAGS (12) - ConditionVariable (12)
- Enumerator (12)
- ErrNoFinishedThread (6)
- ErrNoWaitingThread (6)
- Fiber (12)
-
NEWS for Ruby 3
. 0 . 0 (5) -
SC
_ 2 _ CHAR _ TERM (12) -
SC
_ 2 _ C _ BIND (12) -
SC
_ 2 _ C _ DEV (12) -
SC
_ 2 _ FORT _ DEV (12) -
SC
_ 2 _ FORT _ RUN (12) -
SC
_ 2 _ LOCALEDEF (12) -
SC
_ 2 _ PBS (12) -
SC
_ 2 _ PBS _ ACCOUNTING (12) -
SC
_ 2 _ PBS _ CHECKPOINT (12) -
SC
_ 2 _ PBS _ LOCATE (12) -
SC
_ 2 _ PBS _ MESSAGE (12) -
SC
_ 2 _ PBS _ TRACK (12) -
SC
_ 2 _ SW _ DEV (12) -
SC
_ 2 _ UPE (12) -
SC
_ 2 _ VERSION (12) -
SC
_ ADVISORY _ INFO (12) -
SC
_ AIO _ LISTIO _ MAX (12) -
SC
_ AIO _ MAX (12) -
SC
_ AIO _ PRIO _ DELTA _ MAX (12) -
SC
_ ARG _ MAX (12) -
SC
_ ASYNCHRONOUS _ IO (12) -
SC
_ ATEXIT _ MAX (12) -
SC
_ AVPHYS _ PAGES (12) -
SC
_ BARRIERS (12) -
SC
_ BC _ BASE _ MAX (12) -
SC
_ BC _ DIM _ MAX (12) -
SC
_ BC _ SCALE _ MAX (12) -
SC
_ BC _ STRING _ MAX (12) -
SC
_ CHILD _ MAX (12) -
SC
_ CLK _ TCK (12) -
SC
_ CLOCK _ SELECTION (12) -
SC
_ COLL _ WEIGHTS _ MAX (12) -
SC
_ CPUSET _ SIZE (12) -
SC
_ CPUTIME (12) -
SC
_ DELAYTIMER _ MAX (12) -
SC
_ EXPR _ NEST _ MAX (12) -
SC
_ FSYNC (12) -
SC
_ GETGR _ R _ SIZE _ MAX (12) -
SC
_ GETPW _ R _ SIZE _ MAX (12) -
SC
_ HOST _ NAME _ MAX (12) -
SC
_ IOV _ MAX (12) -
SC
_ IPV6 (12) -
SC
_ JOB _ CONTROL (12) -
SC
_ LINE _ MAX (12) -
SC
_ LOGIN _ NAME _ MAX (12) -
SC
_ MAPPED _ FILES (12) -
SC
_ MEMLOCK (12) -
SC
_ MEMLOCK _ RANGE (12) -
SC
_ MEMORY _ PROTECTION (12) -
SC
_ MESSAGE _ PASSING (12) -
SC
_ MONOTONIC _ CLOCK (12) -
SC
_ MQ _ OPEN _ MAX (12) -
SC
_ MQ _ PRIO _ MAX (12) -
SC
_ NGROUPS _ MAX (12) -
SC
_ NPROCESSORS _ CONF (12) -
SC
_ NPROCESSORS _ ONLN (12) -
SC
_ OPEN _ MAX (12) -
SC
_ PAGESIZE (12) -
SC
_ PAGE _ SIZE (12) -
SC
_ PHYS _ PAGES (12) -
SC
_ PRIORITIZED _ IO (12) -
SC
_ PRIORITY _ SCHEDULING (12) -
SC
_ RAW _ SOCKETS (12) -
SC
_ READER _ WRITER _ LOCKS (12) -
SC
_ REALTIME _ SIGNALS (12) -
SC
_ REGEXP (12) -
SC
_ RE _ DUP _ MAX (12) -
SC
_ RTSIG _ MAX (12) -
SC
_ SAVED _ IDS (12) -
SC
_ SEMAPHORES (12) -
SC
_ SEM _ NSEMS _ MAX (12) -
SC
_ SEM _ VALUE _ MAX (12) -
SC
_ SHARED _ MEMORY _ OBJECTS (12) -
SC
_ SHELL (12) -
SC
_ SIGQUEUE _ MAX (12) -
SC
_ SPAWN (12) -
SC
_ SPIN _ LOCKS (12) -
SC
_ SPORADIC _ SERVER (12) -
SC
_ SS _ REPL _ MAX (12) -
SC
_ STREAM _ MAX (12) -
SC
_ SYMLOOP _ MAX (12) -
SC
_ SYNCHRONIZED _ IO (12) -
SC
_ THREADS (12) -
SC
_ THREAD _ ATTR _ STACKADDR (12) -
SC
_ THREAD _ ATTR _ STACKSIZE (12) -
SC
_ THREAD _ CPUTIME (12) -
SC
_ THREAD _ DESTRUCTOR _ ITERATIONS (12) -
SC
_ THREAD _ KEYS _ MAX (12) -
SC
_ THREAD _ PRIORITY _ SCHEDULING (12) -
SC
_ THREAD _ PRIO _ INHERIT (12) -
SC
_ THREAD _ PRIO _ PROTECT (12) -
SC
_ THREAD _ PROCESS _ SHARED (12) -
SC
_ THREAD _ ROBUST _ PRIO _ INHERIT (12) -
SC
_ THREAD _ ROBUST _ PRIO _ PROTECT (12) -
SC
_ THREAD _ SAFE _ FUNCTIONS (12) -
SC
_ THREAD _ SPORADIC _ SERVER (12) -
SC
_ THREAD _ STACK _ MIN (12) -
SC
_ THREAD _ THREADS _ MAX (12) -
SC
_ TIMEOUTS (12) -
SC
_ TIMERS (12) -
SC
_ TIMER _ MAX (12) -
SC
_ TRACE (12) -
SC
_ TRACE _ EVENT _ FILTER (12) -
SC
_ TRACE _ EVENT _ NAME _ MAX (12) -
SC
_ TRACE _ INHERIT (12) -
SC
_ TRACE _ LOG (12) -
SC
_ TRACE _ NAME _ MAX (12) -
SC
_ TRACE _ SYS _ MAX (12) -
SC
_ TRACE _ USER _ EVENT _ MAX (12) -
SC
_ TTY _ NAME _ MAX (12) -
SC
_ TYPED _ MEMORY _ OBJECTS (12) -
SC
_ TZNAME _ MAX (12) -
SC
_ V6 _ ILP32 _ OFF32 (12) -
SC
_ V6 _ ILP32 _ OFFBIG (12) -
SC
_ V6 _ LP64 _ OFF64 (12) -
SC
_ V6 _ LPBIG _ OFFBIG (12) -
SC
_ V7 _ ILP32 _ OFF32 (12) -
SC
_ V7 _ ILP32 _ OFFBIG (12) -
SC
_ V7 _ LP64 _ OFF64 (12) -
SC
_ V7 _ LPBIG _ OFFBIG (12) -
SC
_ VERSION (12) -
SC
_ XOPEN _ CRYPT (12) -
SC
_ XOPEN _ ENH _ I18N (12) -
SC
_ XOPEN _ REALTIME (12) -
SC
_ XOPEN _ REALTIME _ THREADS (12) -
SC
_ XOPEN _ SHM (12) -
SC
_ XOPEN _ STREAMS (12) -
SC
_ XOPEN _ UNIX (12) -
SC
_ XOPEN _ UUCP (12) -
SC
_ XOPEN _ VERSION (12) - ThreadGroup (12)
- ThreadsWait (6)
-
all
_ waits (18) - empty? (6)
- finished? (6)
- join (30)
-
join
_ nowait (6) - new (6)
-
next
_ wait (6) -
rb
_ gc _ mark _ threads (12) -
rb
_ thread _ wait _ other _ threads (12) -
ruby 1
. 8 . 4 feature (12) - value (12)
検索結果
先頭5件
-
ThreadsWait
# threads -> Array (30255.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>]... -
static void rb
_ thread _ wait _ other _ threads(void) (18300.0) -
-
void rb
_ gc _ mark _ threads(void) (12200.0) -
存在するスレッド全てをマークします。
存在するスレッド全てをマークします。 -
ThreadsWait (12000.0)
-
複数スレッドの終了を待つ機能を提供します。
複数スレッドの終了を待つ機能を提供します。 -
ThreadsWait
:: ErrNoFinishedThread (12000.0) -
nonblock がtrue でかつ、キューが空の時、発生します。
...nonblock がtrue でかつ、キューが空の時、発生します。
@see ThreadsWait#next_wait... -
ThreadsWait
:: ErrNoWaitingThread (12000.0) -
終了を待つスレッドが存在しない時、発生します。
...終了を待つスレッドが存在しない時、発生します。
@see ThreadsWait#next_wait... -
Thread
:: ConditionVariable (11036.0) -
スレッドの同期機構の一つである状態変数を実現するクラスです。
...クラスです。
以下も ConditionVariable を理解するのに参考になります。
https://ruby-doc.com/docs/ProgrammingRuby/html/tut_threads.html#UF
=== Condition Variable とは
あるスレッド A が排他領域で動いていたとします。スレッド A は現在空いてい......tex = Mutex.new
cv = ConditionVariable.new
a = Thread.start {
mutex.synchronize {
...
while (条件が満たされない)
cv.wait(mutex)
end
...
}
}
b = Thread.start {
mutex.synchronize {
# 上の......。@q が空になった場合、
あるいは満タンになった場合に Condition Variable を使って wait しています。
require 'thread'
class TinyQueue
def initialize(max=2)
@max = max
@full = ConditionVariable.new
@empty = ConditionVariable.new
@mutex... -
Etc
:: SC _ THREAD _ THREADS _ MAX -> Integer (9318.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Thread
# value -> object (9076.0) -
スレッド self が終了するまで待ち(Thread#join と同じ)、 そのスレッドのブロックが返した値を返します。スレッド実行中に例外が 発生した場合には、その例外を再発生させます。
...ッド self が終了するまで待ち(Thread#join と同じ)、
そのスレッドのブロックが返した値を返します。スレッド実行中に例外が
発生した場合には、その例外を再発生させます。
スレッドが Thread#kill によって終了した場合は、......の終了を待ち結果を出力する例です。
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| p t.value}
最後の行で、待ち合......わせを行っていることがわかりにくいと思うなら以下
のように書くこともできます。
threads.each {|t| p t.join.value}... -
Thread
# join -> self (9048.0) -
スレッド self の実行が終了するまで、カレントスレッドを停止し ます。self が例外により終了していれば、その例外がカレントス レッドに対して発生します。
...raise ThreadError join を実行することによってデッドロックが起きる場合に発生します。またカレントスレッドを join したときにも発生します。
以下は、生成したすべてのスレッドの終了を待つ例です。
threads = []
threads.pus......h(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 (9048.0) -
スレッド self の実行が終了するまで、カレントスレッドを停止し ます。self が例外により終了していれば、その例外がカレントス レッドに対して発生します。
...raise ThreadError join を実行することによってデッドロックが起きる場合に発生します。またカレントスレッドを join したときにも発生します。
以下は、生成したすべてのスレッドの終了を待つ例です。
threads = []
threads.pus......h(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}... -
ThreadsWait
. new(*threads) -> ThreadsWait (6497.0) -
指定されたスレッドの終了をまつための、スレッド同期オブジェクトをつくります。
...をつくります。
@param threads 終了を待つスレッドを一つもしくは複数指定します。
使用例
require 'thwait'
threads = []
5.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}
thall = ThreadsWait.new(*threads)
thall.all_waits{|th|
pr......#=> #<Thread:0x214bc run>
#=> #<Thread:0x21548 run>
#=> #<Thread:0x215d4 run>
#=> #<Thread:0x21660 run>
#=> #<Thread:0x21430 run>
#=> end #<Thread:0x214bc dead>
#=> end #<Thread:0x21548 dead>
#=> end #<Thread:0x215d4 dead>
#=> end #<Thread:0x21660 dead>
#=> end #<Thread:0x21430...