How do you spawn a child process in Ruby?

In addition to Chris’ great answer, remember to call Process.wait from your master in order to reap your child process, else you’ll leave zombies behind.

Example as requested in comments:

pid = Process.fork do
  puts "child, pid #{Process.pid} sleeping..."
  sleep 5
  puts "child exiting"
end

puts "parent, pid #{Process.pid}, waiting on child pid #{pid}"
Process.wait
puts "parent exiting"

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)