diff --git a/lib/concurrent/timer_task.rb b/lib/concurrent/timer_task.rb index 00956db96..8e66427c0 100644 --- a/lib/concurrent/timer_task.rb +++ b/lib/concurrent/timer_task.rb @@ -308,7 +308,7 @@ def schedule_next_task(interval = execution_interval) # @!visibility private def execute_task(completion) return nil unless @running.true? - ScheduledTask.execute(execution_interval, args: [completion], &method(:timeout_task)) + ScheduledTask.execute(timeout_interval, args: [completion], &method(:timeout_task)) _success, value, reason = @executor.execute(self) if completion.try? self.value = value diff --git a/spec/concurrent/timer_task_spec.rb b/spec/concurrent/timer_task_spec.rb index 6b4e1d676..6ed1cb597 100644 --- a/spec/concurrent/timer_task_spec.rb +++ b/spec/concurrent/timer_task_spec.rb @@ -243,7 +243,7 @@ def trigger_observable(observable) end it 'notifies all observers on timeout' do - subject = TimerTask.new(execution: 0.1, timeout: 0.1) { sleep } + subject = TimerTask.new(run_now: true, execution: 2, timeout: 0.1) { sleep } subject.add_observer(observer) subject.execute observer.latch.wait(1)