Actualmente estoy haciendo esto en un símbolo del sistemaprocesos y subprocesos de muertes en Ruby en Windows
require 'win32/process'
p = Process.spawn("C:/ruby193/bin/bundle exec rails s")
puts p
Process.waitpid(p)
y luego en otro
require 'win32/process'
Process.kill(1,<p>)
El problema es que el proceso que desovan (el servidor Rails en este caso) genera una cadena de subprocesos. El comando kill no los mata, solo los deja huérfanos sin padre.
¿Alguna idea de cómo puedo matar a todo el proceso generado y todos sus hijos?
Me pregunto si el ciclo para obtener procs es confiable. En Linux, los procesos pueden estar fuera de servicio, por lo que se necesitarán algunas iteraciones para captar todos. – akostadinov