55: def stop_all
56: DeepTest.logger.debug("stopping all demons")
57: receivers = @demons_semaphore.synchronize do
58: @demons.reverse
59: end
60:
61: receivers.reverse.each do |demon|
62: name, pid = demon
63: if running?(pid)
64: DeepTest.logger.debug("Sending SIGTERM to #{name}, #{pid}")
65: Process.kill("TERM", pid)
66: end
67: end
68: DeepTest.logger.debug("Warlock: Stopped all receivers")
69:
70: DeepTest.logger.debug("waiting for reapers")
71: @reapers.each {|r| r.join}
72:
73: DeepTest.logger.debug("Warlock: done reaping processes")
74: end