ruby列表儿童痘痘

前端之家收集整理的这篇文章主要介绍了ruby列表儿童痘痘前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何获取ruby脚本开始的所有子进程的pid?

解决方法

您可以通过以下方式获取当前流程:
Process.pid

详见http://whynotwiki.com/Ruby_/_Process_management.

然后,您可以使用特定于操作的命令来获取代码.在基于unix的系统上,这将是一些事情

# Creating 3 child processes.
IO.popen('uname')
IO.popen('uname')
IO.popen('uname')

# Grabbing the pid.
pid = Process.pid

# Get the child pids.
pipe = IO.popen("ps -ef | grep #{pid}")

child_pids = pipe.readlines.map do |line|
  parts = line.split(/\s+/)
  parts[2] if parts[3] == pid.to_s and parts[2] != pipe.pid.to_s
end.compact

# Show the child processes.
puts child_pids

我承认这可能不适用于所有unix系统,因为我相信ps -ef的输出在不同的unix风格上略有不同.

猜你在找的Ruby相关文章