Method: Qs::Process#run
- Defined in:
- lib/qs/process.rb
#run ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/qs/process.rb', line 31 def run ::Process.daemon(true) if self.daemonize? log "Starting Qs daemon for #{@daemon.name}" $0 = @name @pid_file.write log "PID: #{@pid_file.pid}" @signal_io.setup trap_signals(@signal_io) start_daemon(@daemon) signal = catch(:signal) do wait_for_signals(@signal_io, @daemon) end @signal_io.teardown run_restart_cmd(@daemon, @restart_cmd) if signal == RESTART ensure @pid_file.remove end |