るりまサーチ

最速Rubyリファレンスマニュアル検索!
52件ヒット [1-52件を表示] (0.011秒)

別のキーワード

  1. _builtin pid
  2. csv pid
  3. stringio pid
  4. io pid
  5. process pid

ライブラリ

モジュール

キーワード

検索結果

Process.#kill(signal, pid, *rest) -> Integer (18247.0)

pid で指定されたプロセスにシグナルを送ります。signal はシグナル番号(整数)かその名前(文字列またはSymbol)で指定します。 全てのシグナル送信に成功した場合、指定した pid の総数を返します。

...
pid
で指定されたプロセスにシグナルを送ります。signal
はシグナル番号(整数)かその名前(文字列またはSymbol)で指定します。
全てのシグナル送信に成功した場合、指定した pid の総数を返します。

@param signal シグナルをシグ...
...あるいはシグナル名の前に-)を指定すると、プロセスではなくプロセスグループにシグナルを送ります。

@param pid シグナルを送りたいプロセスのプロセス ID を整数で指定します。ただし、0 以下の場合は以下のような意味に...
...けたものと見なされます。

@param rest プロセス ID を整数で指定します。

@raise ArgumentError 存在しないシグナルを指定した場合に発生します。

@raise Errno::EXXX シグナル送信に失敗した場合に発生します。


@see Kernel.#trap, kill(2)...

Timeout.#timeout(sec, exception_class = nil) {|i| ... } -> object (31.0)

ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。

...(0755, "loop.sh")
t = 10 # 10 秒でタイムアウト
begin
pid
= nil
com = nil
Timeout.timeout(t) {
# system だととまらない
# system("./loop.sh")
com = IO.popen("./loop.sh")
pid
= com.pid
while line = com.gets
print line
end
}...
...rescue Timeout::Error => err
puts "timeout: shell execution."
Process.kill('SIGINT', pid)
printf "[result]\t%s", com.read
com.close unless com.nil?
end

#止まっているか確認する。
#system("ps au")...

Timeout.#timeout(sec, exception_class, message) {|i| ... } -> object (31.0)

ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。

...(0755, "loop.sh")
t = 10 # 10 秒でタイムアウト
begin
pid
= nil
com = nil
Timeout.timeout(t) {
# system だととまらない
# system("./loop.sh")
com = IO.popen("./loop.sh")
pid
= com.pid
while line = com.gets
print line
end
}...
...rescue Timeout::Error => err
puts "timeout: shell execution."
Process.kill('SIGINT', pid)
printf "[result]\t%s", com.read
com.close unless com.nil?
end

#止まっているか確認する。
#system("ps au")...

Open3.#pipeline_start(*cmds) -> [Thread] (19.0)

指定したコマンドのリストをパイプで繋いで順番に実行します。

...
ドの配列を返します。

例:

require "open3"

# xeyesを10秒だけ実行する。
Open3.pipeline_start("xeyes") {|ts|
sleep 10
t = ts[0]
Process.kill("TERM", t.pid)
p t.value #=> #<Process::Status: pid 911 SIGTERM (signal 15)>
}

@see Open3.#popen3...

Open3.#pipeline_start(*cmds) {|wait_thrs| ... } -> () (19.0)

指定したコマンドのリストをパイプで繋いで順番に実行します。

...
ドの配列を返します。

例:

require "open3"

# xeyesを10秒だけ実行する。
Open3.pipeline_start("xeyes") {|ts|
sleep 10
t = ts[0]
Process.kill("TERM", t.pid)
p t.value #=> #<Process::Status: pid 911 SIGTERM (signal 15)>
}

@see Open3.#popen3...

絞り込み条件を変える