diff --git a/aws-flow/lib/aws/decider/worker.rb b/aws-flow/lib/aws/decider/worker.rb index 5862d06..51e3bb1 100644 --- a/aws-flow/lib/aws/decider/worker.rb +++ b/aws-flow/lib/aws/decider/worker.rb @@ -51,7 +51,6 @@ def initialize(service, domain, task_list_to_poll, *args, &block) Kernel.exit! 1 else @shutting_down = true - @shutdown_first_time_function.call if @shutdown_first_time_function end end end @@ -304,10 +303,6 @@ def initialize(service, domain, task_list, *args, &block) :logger => @logger ) - @shutdown_first_time_function = lambda do - @executor.shutdown Float::INFINITY - Kernel.exit - end super(service, domain, task_list, *args) end @@ -438,7 +433,11 @@ def run_once(should_register = true, poller = nil) @options ) if poller.nil? - Kernel.exit if @shutting_down + if @shutting_down + @executor.shutdown Float::INFINITY + Kernel.exit + end + poller.poll_and_process_single_task(@options.use_forking) end end