wait(pid = -1, flags = 0) -> Process::Status | nilRuby 3.0 から[permalink][rdoc][edit]-
Process?.wait と同じですが、プロセス ID ではなく Process::Status を返します。
pid と flags の意味は Process?.wait と同じです。
子プロセスがない場合は、実在しないプロセスを表す「空の」 Process::Status を返します。この場合 Process::Status#pid は -1 になります。
Process?.wait と異なり、$? は更新されません。
すべてのプラットフォームで使えるわけではありません。
- [PARAM]
pid: - 待機する子プロセスのプロセス ID を指定します。指定できる値は Process?.wait と同じです。
- [PARAM]
flags: - Process::WNOHANG などを指定します。指定できる値は Process?.wait と同じです。
- [RETURN]
- flags に Process::WNOHANG を指定していて、子プロセスがまだ終了していない場合は nil を返します。
例: 子プロセスがない場合pid = fork { exit 1 } status = Process::Status.wait(pid) p status.class # => Process::Status p status.exitstatus # => 1 # Process.wait と違い $? は更新されない p $? # => nilp Process::Status.wait # => #<Process::Status: pid -1 exit 0>[SEE_ALSO] Process?.wait, Process?.wait2
- [PARAM]