222件ヒット
[1-100件を表示]
(0.081秒)
ライブラリ
- ビルトイン (86)
- monitor (42)
-
net
/ telnet (4) -
shell
/ builtin-command (6) -
shell
/ process-controller (24) -
shell
/ system-command (6) - socket (12)
- sync (24)
- thread (6)
- thwait (12)
クラス
-
ARGF
. class (10) - IO (24)
- Monitor (6)
-
MonitorMixin
:: ConditionVariable (36) -
Net
:: Telnet (4) -
Process
:: Status (12) -
Shell
:: BuiltInCommand (6) -
Shell
:: ProcessController (24) -
Shell
:: SystemCommand (6) - Socket (12)
-
Thread
:: ConditionVariable (36) -
Thread
:: Queue (10) - ThreadsWait (12)
モジュール
-
Sync
_ m (24)
キーワード
- >> (12)
- broadcast (12)
- close (10)
-
connect
_ nonblock (12) -
next
_ wait (6) -
read
_ nonblock (22) - signal (12)
-
sync
_ upgrade _ waiting (6) -
sync
_ upgrade _ waiting= (6) -
sync
_ waiting (6) -
sync
_ waiting= (6) - threads (6)
- wait? (12)
-
wait
_ all _ jobs _ execution (6) -
wait
_ for _ cond (6) -
wait
_ until (12) -
wait
_ while (12) - waitfor (4)
-
waiting
_ job? (6) -
waiting
_ jobs (6) -
waiting
_ jobs _ exist? (6) -
write
_ nonblock (12)
検索結果
先頭5件
-
MonitorMixin
:: ConditionVariable # wait(timeout = nil) -> bool (21114.0) -
モニタのロックを開放し、現在のスレッドを停止します。
...。
これを呼ぶスレッドはモニタのロックを保持している必要があります。
MonitorMixin::ConditionVariable#signal や
MonitorMixin::ConditionVariable#broadcast
で起こされるまでスレッドは停止し続けます。
timeout を与えた場合は最大 timeout 秒......します。
実行を再開したスレッドはモニタのロックを保持した状態になります。
これによって危険領域(critical section)上で動作している
スレッドはただ一つになり、排他を実現します。
true を返します。timeout が与えられ......での秒数。指定しなかった場合はタイムアウトしません。
@raise ThreadError ロックを持っていないスレッドがこのメソッドを呼びだした場合に発生します
@see MonitorMixin::ConditionVariable#wait_while, MonitorMixin::ConditionVariable#wait_until... -
Thread
:: ConditionVariable # wait(mutex , timeout = nil) -> self (21108.0) -
mutex のロックを解放し、カレントスレッドを停止します。 Thread::ConditionVariable#signalまたは、 Thread::ConditionVariable#broadcastで送られたシグナルを 受け取ると、mutexのロックを取得し、実行状態となります。
...mutex のロックを解放し、カレントスレッドを停止します。
Thread::ConditionVariable#signalまたは、
Thread::ConditionVariable#broadcastで送られたシグナルを
受け取ると、mutexのロックを取得し、実行状態となります。
@param mutex Thread::Mutex......ます。この場合はシグナルを受け取
らなかった場合でも指定した秒数が経過するとスリープを終了
します。省略するとスリープし続けます。
@see Thread::ConditionVariable#signal, Thread::ConditionVariable#broadcast......mutex のロックを解放し、カレントスレッドを停止します。
Thread::ConditionVariable#signalまたは、
Thread::ConditionVariable#broadcastで送られたシグナルを
受け取ると、mutexのロックを取得し、実行状態となります。
@param mutex Mutex オブ... -
Sync
_ m # sync _ upgrade _ waiting -> [Thread] (15201.0) -
@todo
@todo -
Sync
_ m # sync _ upgrade _ waiting=(arr) (15201.0) -
@todo
@todo -
Sync
_ m # sync _ waiting -> [Thread] (15201.0) -
@todo
@todo -
Sync
_ m # sync _ waiting=(arr) (15201.0) -
@todo
@todo -
Monitor
# wait _ for _ cond(cond , timeout) -> bool (12330.0) -
MonitorMixin::ConditionVariable 用の内部メソッドです。
...MonitorMixin::ConditionVariable 用の内部メソッドです。
@param cond Thread::ConditionVariable を指定します。
@param timeout タイムアウトまでの秒数。指定しなかった場合はタイムアウトしません。
@return タイムアウトしたときは false を返し......ます。それ以外は true を返します。
//emlist[例][ruby]{
require 'monitor'
m = Monitor.new
cv = Thread::ConditionVariable.new
m.enter
m.wait_for_cond(cv, 1)
//}... -
Monitor
# wait _ for _ cond(cond , timeout) -> true (12330.0) -
MonitorMixin::ConditionVariable 用の内部メソッドです。
...MonitorMixin::ConditionVariable 用の内部メソッドです。
@param cond Thread::ConditionVariable を指定します。
@param timeout タイムアウトまでの秒数。指定しなかった場合はタイムアウトしません。
@return Ruby 1.9 の頃からのバグで常に true を......返します。(16608)
//emlist[例][ruby]{
require 'monitor'
m = Monitor.new
cv = Thread::ConditionVariable.new
m.enter
m.wait_for_cond(cv, 1)
//}... -
Shell
:: ProcessController # wait _ all _ jobs _ execution -> () (12202.0) -
全てのジョブの実行が終わるまで待ちます。
全てのジョブの実行が終わるまで待ちます。 -
ThreadsWait
# next _ wait(nonblock = nil) -> Thread (9214.0) -
指定したスレッドのどれかが終了するまで待ちます。
...ちます。
@param nonblock true を与えると、キューが空の時、例外 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... -
Socket
# connect _ nonblock(server _ sockaddr) -> 0 (9113.0) -
ソケットをノンブロッキングモードに設定した後、 connect(2) を呼び出します。
...定した後、
connect(2) を呼び出します。
引数、返り値は Socket#connect と同じです。
connect が EINPROGRESS エラーを報告した場合、その例外(Errno::EINPROGRESS)
には IO::WaitWritable が Object#extend されます。
これを connect_nonblock をリトライ......ire 'socket'
include Socket::Constants
socket = Socket.new(AF_INET, SOCK_STREAM, 0)
sockaddr = Socket.sockaddr_in(80, 'www.google.com')
begin # emulate blocking connect
socket.connect_nonblock(sockaddr)
rescue IO::WaitWritable
IO.select(nil, [socket]) # wait 3-way handshake complet......ion
begin
socket.connect_nonblock(sockaddr) # check connection failure
rescue Errno::EISCONN
end
end
socket.write("GET / HTTP/1.0\r\n\r\n")
results = socket.read
@param server_sockaddr 接続先アドレス
@raise Errno::EXXX connect(2) がエラーを報告した場合に... -
MonitorMixin
:: ConditionVariable # wait _ until { . . . } -> () (9108.0) -
モニタのロックを開放し、現在のスレッドを ブロックで指定した条件を満たすまで停止します。
...し、現在のスレッドを
ブロックで指定した条件を満たすまで停止します。
MonitorMixin::ConditionVariable#signal や
MonitorMixin::ConditionVariable#broadcast で
スレッドが起こされると、ロックを取得し、ブロックを評価し
その結果によって......このメソッドから抜け処理を継続するか
再びロックを開放しスレッドを停止するかを決めます。
@see MonitorMixin::ConditionVariable#wait... -
MonitorMixin
:: ConditionVariable # wait _ while { . . . } -> () (9108.0) -
モニタのロックを開放し、現在のスレッドを ブロックで指定した条件を満たしている間停止します。
...現在のスレッドを
ブロックで指定した条件を満たしている間停止します。
MonitorMixin::ConditionVariable#signal や
MonitorMixin::ConditionVariable#broadcast で
スレッドが起こされると、ロックを取得し、ブロックを評価し
その結果によって......このメソッドから抜け処理を継続するか
再びロックを開放しスレッドを停止するかを決めます。
@raise ThreadError ロックを持っていないスレッドがこのメソッドを呼びだした場合に発生します
@see MonitorMixin::ConditionVariable#wait...