162件ヒット
[1-100件を表示]
(0.123秒)
種類
- インスタンスメソッド (91)
- クラス (46)
- 文書 (25)
ライブラリ
- ビルトイン (110)
- thread (15)
-
webrick
/ server (12)
クラス
-
Thread
:: SizedQueue (79) -
WEBrick
:: GenericServer (12)
キーワード
- << (11)
- ClosedQueueError (10)
-
NEWS for Ruby 2
. 5 . 0 (8) -
NEWS for Ruby 3
. 0 . 0 (5) - Queue (12)
- close (10)
- deq (12)
- enq (11)
- pop (12)
- push (11)
-
ruby 1
. 6 feature (12) - shift (12)
- tokens (12)
検索結果
先頭5件
-
SizedQueue (38032.0)
-
Alias of Thread::SizedQueue
...Alias of Thread::SizedQueue... -
ClosedQueueError (26048.0)
-
close 済みの Thread::Queue や Thread::SizedQueue に許可され ていない操作を行おうとした場合に発生する例外です。
...close 済みの Thread::Queue や Thread::SizedQueue に許可され
ていない操作を行おうとした場合に発生する例外です。... -
Thread
:: SizedQueue (18028.0) -
サイズの最大値を指定できる Thread::Queue です。
...り。q をサイズ 1 の SizedQueue オブジェクトに
することによって、入力される行と出力される行が同じ順序になります。
q = [] にすると入力と違った順序で行が出力されます。
require 'thread'
q = SizedQueue.new(1)
th = Thread.start... -
Thread
:: SizedQueue # close -> self (9118.0) -
キューを close します。詳しくは Thread::Queue#close を参照してください。
...ューを close します。詳しくは Thread::Queue#close を参照してください。
Thread::Queue とはキューにオブジェクトを追加するスレッドの動作が
異なります。キューにオブジェクトを追加するスレッドを待機している場合は
ClosedQueue......Error が発生して中断されます。
//emlist[例][ruby]{
q = SizedQueue.new(4)
[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }
q.closed? # => false
q.close
q.closed? # => true
//}
@see Thread::Queue#close... -
WEBrick
:: GenericServer # tokens -> Thread :: SizedQueue (3165.0) -
MaxClient の設定のために使われる Thread::SizedQueue オブジェクト を返します。Thread::SizedQueue オブジェクトのサイズは現在受け付け ることのできるクライアントの数です。
...MaxClient の設定のために使われる Thread::SizedQueue オブジェクト
を返します。Thread::SizedQueue オブジェクトのサイズは現在受け付け
ることのできるクライアントの数です。
MaxClient を知りたい場合は self.tokens.max です。
self.tokens... -
Thread
:: SizedQueue # deq(non _ block = false) -> object (3118.0) -
キューからひとつ値を取り出します。 キューに 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].each{|r|
q.pu......resource1
# resource2
# resource3
//}
//emlist[例: nonblock = true][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each{|r|
q.push(r)
}
begin
th1.join
q.pop(true)
rescue =>......e
p e
p e.message
end
# => resource1
# resource2
# resource3
# => #<ThreadError: queue empty>
# => "queue empty"
//}
@see Thread::Queue#pop... -
Thread
:: SizedQueue # enq(obj , non _ block = false) -> () (3118.0) -
キューに与えられたオブジェクトを追加します。
...与えられたオブジェクトを追加します。
キューのサイズが Thread::SizedQueue#max に達している場合は、
non_block が真でなければ、キューのサイズが Thread::SizedQueue#max
より小さくなるまで他のスレッドに実行を譲ります。
その後......、キューに与えられたオブジェクトを追加します。
@param obj キューに追加したいオブジェクトを指定します。
@param non_block true を与えると、キューが一杯の時に例外 ThreadError が発生します。
@see Thread::Queue#push... -
Thread
:: SizedQueue # pop(non _ block = false) -> object (3118.0) -
キューからひとつ値を取り出します。 キューに 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].each{|r|
q.pu......resource1
# resource2
# resource3
//}
//emlist[例: nonblock = true][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each{|r|
q.push(r)
}
begin
th1.join
q.pop(true)
rescue =>......e
p e
p e.message
end
# => resource1
# resource2
# resource3
# => #<ThreadError: queue empty>
# => "queue empty"
//}
@see Thread::Queue#pop... -
Thread
:: SizedQueue # push(obj , non _ block = false) -> () (3118.0) -
キューに与えられたオブジェクトを追加します。
...与えられたオブジェクトを追加します。
キューのサイズが Thread::SizedQueue#max に達している場合は、
non_block が真でなければ、キューのサイズが Thread::SizedQueue#max
より小さくなるまで他のスレッドに実行を譲ります。
その後......、キューに与えられたオブジェクトを追加します。
@param obj キューに追加したいオブジェクトを指定します。
@param non_block true を与えると、キューが一杯の時に例外 ThreadError が発生します。
@see Thread::Queue#push...