るりまサーチ

最速Rubyリファレンスマニュアル検索!
187件ヒット [1-100件を表示] (0.017秒)
トップページ > クエリ:fork[x] > 種類:モジュール関数[x]

別のキーワード

  1. _builtin fork
  2. kernel fork
  3. process fork
  4. thread fork

ライブラリ

モジュール

キーワード

検索結果

<< 1 2 > >>

Kernel.#fork -> Integer | nil (18143.0)

fork(2) システムコールを使ってプロセスの複製を作 ります。親プロセスでは子プロセスのプロセスIDを、子プロセスでは nil を返します。ブロックを指定して呼び出した場合には、生成し た子プロセスでブロックを評価します。

...
fork
(2) システムコールを使ってプロセスの複製を作
ります。親プロセスでは子プロセスのプロセスIDを、子プロセスでは
nil を返します。ブロックを指定して呼び出した場合には、生成し
た子プロセスでブロックを評価しま...
...す。

fork
前に STDOUT と STDERR を IO#flush します。

@raise NotImplementedError 実行環境がこのメソッドに対応していないとき発生します。

//emlist[ブロックを指定しなかった場合][ruby]{
if child_pid = fork
puts "parent process. pid: #{Process.pid},...
...# => child process. pid: 81329

# 子プロセスでの処理
sleep(1)
end
//}

//emlist[ブロックを指定した場合][ruby]{
child_pid = fork do
puts "child process. pid: #{Process.pid}"
# => child process. pid: 79602

# 子プロセスでの処理
sleep(1)
end

puts "parent proc...

Kernel.#fork { ... } -> Integer | nil (18143.0)

fork(2) システムコールを使ってプロセスの複製を作 ります。親プロセスでは子プロセスのプロセスIDを、子プロセスでは nil を返します。ブロックを指定して呼び出した場合には、生成し た子プロセスでブロックを評価します。

...
fork
(2) システムコールを使ってプロセスの複製を作
ります。親プロセスでは子プロセスのプロセスIDを、子プロセスでは
nil を返します。ブロックを指定して呼び出した場合には、生成し
た子プロセスでブロックを評価しま...
...す。

fork
前に STDOUT と STDERR を IO#flush します。

@raise NotImplementedError 実行環境がこのメソッドに対応していないとき発生します。

//emlist[ブロックを指定しなかった場合][ruby]{
if child_pid = fork
puts "parent process. pid: #{Process.pid},...
...# => child process. pid: 81329

# 子プロセスでの処理
sleep(1)
end
//}

//emlist[ブロックを指定した場合][ruby]{
child_pid = fork do
puts "child process. pid: #{Process.pid}"
# => child process. pid: 79602

# 子プロセスでの処理
sleep(1)
end

puts "parent proc...

Kernel.#exit!(status = false) -> () (13.0)

Rubyプログラムの実行を即座に終了します。 status として整数が与えられた場合、その値を Ruby コマンドの終了ステータスとします。 デフォルトの終了ステータスは 1 です。

...URE の値なので、正確には環境依存です。

exit! は exit とは違って、例外処理などは一切行ないませ
ん。 Kernel.#fork の後、子プロセスを終了させる時などに用
いられます。

@param status 終了ステータスを整数か true または false...
...T.sync = true #表示前に終了しないようにする
puts 'start'
begin
puts 'start1...'
exit!
ensure
puts 'end1...' #実行されない
end
puts 'end' #実行されない

#=> start
# start1...
#終了ステータス:1
//}

@see Kernel.#exit,Kernel.#abort,Kernel.#at_exit,Kernel.#fork...

Kernel.#at_exit { ... } -> Proc (7.0)

与えられたブロックをインタプリタ終了時に実行します。

...Proc オブジェクトで返します。

//emlist[例][ruby]{
3.times do |i|
at_exit{puts "at_exit#{i}"}
end
END{puts "END"}
at_exit{puts "at_exit"}
puts "main_end"

#=> main_end
# at_exit
# END
# at_exit2
# at_exit1
# at_exit0
//}

@see d:spec/control#END,Kernel.#exit!,Kernel.#fork...

Kernel.#exec(env, program, *args, options={}) -> () (7.0)

引数で指定されたコマンドを実行します。

...替えて以下を実行
$ ps aux|grep sleep
xxxx 32754 0.0 0.0 2580 468 pts/3 S+ 22:01 0:00 mysleep 600
xxxx 32761 0.0 0.0 2824 792 pts/6 S+ 22:01 0:00 grep sleep

@see Kernel.#system,Kernel.#`,Kernel.#spawn,Kernel.#fork,IO.popen,IO.pipe,Kernel.#open,exec(3)...

絞り込み条件を変える

Kernel.#exec(program, *args, options={}) -> () (7.0)

引数で指定されたコマンドを実行します。

...替えて以下を実行
$ ps aux|grep sleep
xxxx 32754 0.0 0.0 2580 468 pts/3 S+ 22:01 0:00 mysleep 600
xxxx 32761 0.0 0.0 2824 792 pts/6 S+ 22:01 0:00 grep sleep

@see Kernel.#system,Kernel.#`,Kernel.#spawn,Kernel.#fork,IO.popen,IO.pipe,Kernel.#open,exec(3)...

Process.#detach(pid) -> Thread (7.0)

子プロセス pid の終了を監視するスレッドを生成して返します。 生成したスレッドは子プロセスが終了した後に終了ステータス (Process::Status) を返します。 指定した子プロセスが存在しなければ即座に nil で終了します。

...す。

@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。

pid = fork {
# child
sleep 3
}

p pid # => 7762
th = Process.detach(pid)
p th.value
# => #<Process::Status: pid 7762 exit 0>...

Process.#setpgrp -> 0 (7.0)

カレントプロセスの ID と同じ ID をもつプロセスグループを作成し、カレントプロセスをそのリーダーにします。 Process.#setpgid(0, 0) と同じです。

...生します。

@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。

fork
do
p [Process.pid, Process.getpgrp]
p Process.setpgrp
p [Process.pid, Process.getpgrp]
end
Process.wait
#=>
[3427, 3426]
0
[3...

Process.#wait(pid = -1, flags = 0) -> Integer | nil (7.0)

pid で指定される特定の子プロセスの終了を待ち、そのプロセスが 終了した時に pid を返します。 wait2, waitpid2 は子プロセスの pid と終了ステータスを表す Process::Status オブジェクトの配列を返します。 ノンブロッキングモードで子プロセスがまだ終了していない時には nil を返します。

...flags はいつも nil または 0 を指定する必要があります。

@raise Errno::ECHILD 子プロセスが存在しない場合に発生します。

//emlist[][ruby]{
pid = fork { sleep 1 }
Process.wait2 # => [70024, #<Process::Status: pid 70024 exit 0>]
//}

@see wait(2), waitpid(2)...

Process.#wait2(pid = -1, flags = 0) -> [Integer, Process::Status] | nil (7.0)

pid で指定される特定の子プロセスの終了を待ち、そのプロセスが 終了した時に pid を返します。 wait2, waitpid2 は子プロセスの pid と終了ステータスを表す Process::Status オブジェクトの配列を返します。 ノンブロッキングモードで子プロセスがまだ終了していない時には nil を返します。

...flags はいつも nil または 0 を指定する必要があります。

@raise Errno::ECHILD 子プロセスが存在しない場合に発生します。

//emlist[][ruby]{
pid = fork { sleep 1 }
Process.wait2 # => [70024, #<Process::Status: pid 70024 exit 0>]
//}

@see wait(2), waitpid(2)...

絞り込み条件を変える

<< 1 2 > >>