検索結果
先頭5件
-
Process
. # waitpid(pid = -1 , flags = 0) -> Integer | nil (15246.0) -
pid で指定される特定の子プロセスの終了を待ち、そのプロセスが 終了した時に pid を返します。 wait2, waitpid2 は子プロセスの pid と終了ステータスを表す Process::Status オブジェクトの配列を返します。 ノンブロッキングモードで子プロセスがまだ終了していない時には nil を返します。
...pid で指定される特定の子プロセスの終了を待ち、そのプロセスが
終了した時に pid を返します。
wait2, waitpid2 は子プロセスの pid と終了ステータスを表す
Process::Status オブジェクトの配列を返します。
ノンブロッキングモー......し元のプロセスとプロセスグループ ID が同じ任意の子プロセスを待ちます。
-1 (省略時のデフォルト) は任意の子プロセスを待ちます。
-1 未満なら pid の絶対値とプロセスグループ ID が同じ任意の子プロセスを待......す。
ノンブロッキングモードで子プロセスがまだ終了していない時には
nil を返します。waitpid(2) か wait4(2) の実装されていないマシンでは
flags はいつも nil または 0 を指定する必要があります。... -
Process
. # waitpid2(pid = -1 , flags = 0) -> [Integer , Process :: Status] | nil (3246.0) -
pid で指定される特定の子プロセスの終了を待ち、そのプロセスが 終了した時に pid を返します。 wait2, waitpid2 は子プロセスの pid と終了ステータスを表す Process::Status オブジェクトの配列を返します。 ノンブロッキングモードで子プロセスがまだ終了していない時には nil を返します。
...pid で指定される特定の子プロセスの終了を待ち、そのプロセスが
終了した時に pid を返します。
wait2, waitpid2 は子プロセスの pid と終了ステータスを表す
Process::Status オブジェクトの配列を返します。
ノンブロッキングモー......し元のプロセスとプロセスグループ ID が同じ任意の子プロセスを待ちます。
-1 (省略時のデフォルト) は任意の子プロセスを待ちます。
-1 未満なら pid の絶対値とプロセスグループ ID が同じ任意の子プロセスを待......す。
ノンブロッキングモードで子プロセスがまだ終了していない時には
nil を返します。waitpid(2) か wait4(2) の実装されていないマシンでは
flags はいつも nil または 0 を指定する必要があります。... -
Process
. # wait(pid = -1 , flags = 0) -> Integer | nil (146.0) -
pid で指定される特定の子プロセスの終了を待ち、そのプロセスが 終了した時に pid を返します。 wait2, waitpid2 は子プロセスの pid と終了ステータスを表す Process::Status オブジェクトの配列を返します。 ノンブロッキングモードで子プロセスがまだ終了していない時には nil を返します。
...pid で指定される特定の子プロセスの終了を待ち、そのプロセスが
終了した時に pid を返します。
wait2, waitpid2 は子プロセスの pid と終了ステータスを表す
Process::Status オブジェクトの配列を返します。
ノンブロッキングモー......し元のプロセスとプロセスグループ ID が同じ任意の子プロセスを待ちます。
-1 (省略時のデフォルト) は任意の子プロセスを待ちます。
-1 未満なら pid の絶対値とプロセスグループ ID が同じ任意の子プロセスを待......す。
ノンブロッキングモードで子プロセスがまだ終了していない時には
nil を返します。waitpid(2) か wait4(2) の実装されていないマシンでは
flags はいつも nil または 0 を指定する必要があります。... -
Process
. # wait2(pid = -1 , flags = 0) -> [Integer , Process :: Status] | nil (146.0) -
pid で指定される特定の子プロセスの終了を待ち、そのプロセスが 終了した時に pid を返します。 wait2, waitpid2 は子プロセスの pid と終了ステータスを表す Process::Status オブジェクトの配列を返します。 ノンブロッキングモードで子プロセスがまだ終了していない時には nil を返します。
...pid で指定される特定の子プロセスの終了を待ち、そのプロセスが
終了した時に pid を返します。
wait2, waitpid2 は子プロセスの pid と終了ステータスを表す
Process::Status オブジェクトの配列を返します。
ノンブロッキングモー......し元のプロセスとプロセスグループ ID が同じ任意の子プロセスを待ちます。
-1 (省略時のデフォルト) は任意の子プロセスを待ちます。
-1 未満なら pid の絶対値とプロセスグループ ID が同じ任意の子プロセスを待......す。
ノンブロッキングモードで子プロセスがまだ終了していない時には
nil を返します。waitpid(2) か wait4(2) の実装されていないマシンでは
flags はいつも nil または 0 を指定する必要があります。... -
Process
:: WUNTRACED -> Integer (144.0) -
Process.#waitpid の第二引数に指定するフラグです。 このフラグが指定された場合、waitpid は停止しているだけで 終了していない子プロセスのプロセス ID も返すようになります。 trace されている子プロセスの ID は返しません。
...Process.#waitpid の第二引数に指定するフラグです。
このフラグが指定された場合、waitpid は停止しているだけで
終了していない子プロセスのプロセス ID も返すようになります。
trace されている子プロセスの ID は返しません......。
include Process
pid = fork{ Process.kill('SIGSTOP', Process.pid) }
p pid #=> 4336
p waitpid2(pid, WUNTRACED) #=> [4336, #<Process::Status: pid=4336,stopped(SIGSTOP=19)>]
@see waitpid(2)... -
Process
:: WNOHANG -> Integer (132.0) -
Process.#waitpid の第二引数に指定するフラグです。 終了した子プロセスがない時でも waitpid がブロックしません。
...Process.#waitpid の第二引数に指定するフラグです。
終了した子プロセスがない時でも waitpid がブロックしません。... -
Kernel
. # spawn(env , program , *args , options={}) -> Integer (118.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
...//emlist[例][ruby]{
# FOO を BAR にして BAZ を削除する
pid = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//}
親プロセスは Process.#waitpid で子プロセスの終了を待ち合わせるか
もしくは Process.#detach で子プロセスを切り離すかしてください。
そう......を用いて、IO.popen で、子プロセスの
stderr と stdout を混ぜる例を以下に示します。
//emlist[][ruby]{
io = IO.popen(["sh", "-c", "echo out; echo err >&2", :err=>[:child, :out]])
p io.read #=> "out\nerr\n
//}
spawn と IO.popen では
デフォルトでは非標準的なフ......スクリプタだけを継承したい場合は、
io => io という形のオプションを指定します。
//emlist[][ruby]{
# valgrind は --log-fd というオプションでログの出力先を指定できます。
# これで指定したファイルデスクリプタは親プロセスか... -
Kernel
. # spawn(program , *args) -> Integer (118.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
...//emlist[例][ruby]{
# FOO を BAR にして BAZ を削除する
pid = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//}
親プロセスは Process.#waitpid で子プロセスの終了を待ち合わせるか
もしくは Process.#detach で子プロセスを切り離すかしてください。
そう......を用いて、IO.popen で、子プロセスの
stderr と stdout を混ぜる例を以下に示します。
//emlist[][ruby]{
io = IO.popen(["sh", "-c", "echo out; echo err >&2", :err=>[:child, :out]])
p io.read #=> "out\nerr\n
//}
spawn と IO.popen では
デフォルトでは非標準的なフ......スクリプタだけを継承したい場合は、
io => io という形のオプションを指定します。
//emlist[][ruby]{
# valgrind は --log-fd というオプションでログの出力先を指定できます。
# これで指定したファイルデスクリプタは親プロセスか... -
Process
:: Status # stopped? -> bool (116.0) -
プロセスが現在停止(終了ではない)している場合に真を返します。 Process.#waitpid に Process::WUNTRACED フラグを設定した 場合にだけ真になりえます。
...プロセスが現在停止(終了ではない)している場合に真を返します。
Process.#waitpid に Process::WUNTRACED フラグを設定した
場合にだけ真になりえます。... -
Kernel
. # fork -> Integer | nil (112.0) -
fork(2) システムコールを使ってプロセスの複製を作 ります。親プロセスでは子プロセスのプロセスIDを、子プロセスでは nil を返します。ブロックを指定して呼び出した場合には、生成し た子プロセスでブロックを評価します。
...parent process. pid: 81060, child pid: 81329
# 親プロセスでの処理
# ...
# 子プロセスの終了を待って終了。
Process.waitpid(child_pid)
else
puts "child process. pid: #{Process.pid}"
# => child process. pid: 81329
# 子プロセスでの処理
sleep(1)
end
//}......puts "parent process. pid: #{Process.pid}, child pid: #{child_pid}"
# => parent process. pid: 79055, child pid: 79602
# 親プロセスでの処理
# ...
# 子プロセスの終了を待って終了。
Process.waitpid(child_pid)
//}
@see IO.popen,IO.pipe,Kernel.#at_exit,Kernel.#exit!, fork(2)...