mirror of
https://github.com/discourse/discourse.git
synced 2024-12-21 14:24:27 +08:00
35b1185a08
I introduced DemonBase because I had got some conflict between `demon/base.rb` and `jobs/base.rb`, however, to not rename base class, it is possible to use regex on absolute path in Zeitwerk custom inflector.
28 lines
421 B
Ruby
28 lines
421 B
Ruby
# frozen_string_literal: true
|
|
|
|
require File.expand_path("../../../config/environment", __FILE__)
|
|
|
|
puts "Parent is now loaded"
|
|
|
|
class ForkExecDemon < Demon::Base
|
|
def self.prefix
|
|
"fork-exec-child"
|
|
end
|
|
|
|
def run
|
|
if @pid = fork
|
|
write_pid_file
|
|
return
|
|
end
|
|
|
|
exec "./child #{parent_pid}"
|
|
end
|
|
end
|
|
|
|
ForkExecDemon.start(1, verbose: true)
|
|
|
|
while true
|
|
ForkExecDemon.ensure_running
|
|
sleep 0.1
|
|
end
|