るりまサーチ

最速Rubyリファレンスマニュアル検索!
84件ヒット [1-84件を表示] (0.014秒)
トップページ > クエリ:wait[x] > ライブラリ:thwait[x]

別のキーワード

  1. io/wait wait_writable
  2. io wait_writable
  3. conditionvariable wait
  4. _builtin wait
  5. io/wait wait

検索結果

ThreadsWait#next_wait(nonblock = nil) -> Thread (9109.0)

指定したスレッドのどれかが終了するまで待ちます。

...外 ThreadsWait::ErrNoFinishedThread が発生します。

@raise ErrNoWaitingThread 終了をまつスレッドが存在しない時、発生します。

@raise ErrNoFinishedThread nonblock がtrue でかつ、キューが空の時、発生します。

#使用例
require 'thwait'

threads...
...= []
2.times {|i|
threads << Thread.new { sleep i }
}

thall = ThreadsWait.new
thall.join_nowait(*threads)
until thall.empty?
th = thall.next_wait
p th
end

@see Queue#pop...

ThreadsWait#all_waits -> () (9102.0)

指定されたスレッドすべてが終了するまで待ちます。 ブロックが与えられた場合、スレッド終了時にブロックを評価します。

...ド終了時にブロックを評価します。

使用例
require 'thwait'

threads = []
5.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}

thall = ThreadsWait.new(*threads)
thall.all_waits{|th|
printf("end %s\n", th.inspect)
}

# 出力例
#=> #<Thre...

ThreadsWait#join_nowait(*threads) -> () (9102.0)

終了を待つスレッドの対象として、threads で指定されたスレッドを指定します。 しかし、実際には終了をまちません。

...レッドに指定されたthreadsを加えます。

require 'thwait'

threads = []
5.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}

thall = ThreadsWait.new
p thall.threads #=> []
thall.join_nowait(*threads)
p thall.threads #=> [#<Thread:0x21638 sleep>, #<Thre...

ThreadsWait.all_waits(*threads) -> () (9102.0)

指定されたスレッドすべてが終了するまで待ちます。 ブロックが与えられた場合、スレッド終了時にブロックを評価します。

...するまでまつスレッドを一つもしくは複数指定します。

require 'thwait'

threads = []
5.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}
ThreadsWait.all_waits(*threads) {|th| printf("end %s\n", th.inspect) }

# 出力例
#=> #<Thread:0x21584 ru...

ThreadsWait.all_waits(*threads) {|thread| ...} -> () (9102.0)

指定されたスレッドすべてが終了するまで待ちます。 ブロックが与えられた場合、スレッド終了時にブロックを評価します。

...するまでまつスレッドを一つもしくは複数指定します。

require 'thwait'

threads = []
5.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}
ThreadsWait.all_waits(*threads) {|th| printf("end %s\n", th.inspect) }

# 出力例
#=> #<Thread:0x21584 ru...

絞り込み条件を変える

ThreadsWait::ErrNoWaitingThread (9008.0)

終了を待つスレッドが存在しない時、発生します。

...終了を待つスレッドが存在しない時、発生します。

@see ThreadsWait#next_wait...

ThWait (6002.0)

Alias of ThreadsWait

...Alias of ThreadsWait...

ThreadsWait (6002.0)

複数スレッドの終了を待つ機能を提供します。

複数スレッドの終了を待つ機能を提供します。

ThreadsWait.new(*threads) -> ThreadsWait (3102.0)

指定されたスレッドの終了をまつための、スレッド同期オブジェクトをつくります。

...ドを一つもしくは複数指定します。

使用例
require 'thwait'

threads = []
5.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}

thall = ThreadsWait.new(*threads)
thall.all_waits{|th|
printf("end %s\n", th.inspect)
}

# 出力例
#=> #<Thre...

ThreadsWait::ErrNoFinishedThread (3008.0)

nonblock がtrue でかつ、キューが空の時、発生します。

...nonblock がtrue でかつ、キューが空の時、発生します。

@see ThreadsWait#next_wait...

絞り込み条件を変える

ThreadsWait#empty? -> bool (3002.0)

同期されるスレッドが存在するならば true をかえします。

...るスレッドが存在するならば true をかえします。

使用例
require 'thwait'

threads = []
3.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}

thall = ThreadsWait.new
p thall.threads.empty? #=> true
thall.join(*threads)
p thall.threads.empty? #=>...

ThreadsWait#finished? -> bool (3002.0)

すでに終了したスレッドが存在すれば true を返します。

...に終了したスレッドが存在すれば true を返します。

使用例
require 'thwait'

threads = []
3.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}

thall = ThreadsWait.new(*threads)
p thall.finished? #=> false
sleep 3
p thall.finished? #=> true...

ThreadsWait#join(*threads) -> () (3002.0)

終了を待つスレッドの対象として、threads で指定されたスレッドを指定します。

...ドの終了を待つスレッドに指定されたthreadsを加えます。

require 'thwait'

threads = []
5.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}

thall = ThreadsWait.new
p thall.threads #=> []
thall.join(*threads)
p thall.threads
#=> [#<Thread:0x2...

ThreadsWait#threads -> Array (3002.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>, #<...