class ChildProcess::Unix::Process
Public Instance Methods
return_unless_timeout()
click to toggle source
# File lib/childprocess/process.rb, line 5 def return_unless_timeout lambda do |timeout| begin return poll_for_exit timeout rescue TimeoutError end end end
stop(timeout = 3, signal=nil)
click to toggle source
# File lib/childprocess/process.rb, line 14 def stop(timeout = 3, signal=nil) assert_started unless signal.nil? send_signal signal return_unless_timeout.call(timeout) end send_term return_unless_timeout.call(timeout) send_kill wait rescue Errno::ECHILD, Errno::ESRCH # handle race condition where process dies between timeout # and send_kill true end