From def8d28c3bb1d00f58c4e9c0e1f903bb99b1d146 Mon Sep 17 00:00:00 2001 From: RubyOn Date: Sat, 19 Apr 2025 06:13:12 +0900 Subject: [PATCH] =?UTF-8?q?rufus-scheduler=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/services/modbus/polling_service.rb | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/app/services/modbus/polling_service.rb b/app/services/modbus/polling_service.rb index 710705f..37fce95 100644 --- a/app/services/modbus/polling_service.rb +++ b/app/services/modbus/polling_service.rb @@ -5,7 +5,7 @@ module Modbus class PollingService class << self def start - return if defined?(@scheduler) && @scheduler&.running? + return if defined?(@scheduler) && @scheduler.jobs.any? puts "[#{Time.current}] Modbus polling service 시작됨 (Rufus)" @scheduler = Rufus::Scheduler.new @@ -20,12 +20,16 @@ module Modbus end def stop - @scheduler&.shutdown - puts "[#{Time.current}] Modbus polling service 중지됨" + if defined?(@scheduler) + @scheduler.shutdown(:kill) + puts "[#{Time.current}] Modbus polling service 중지됨" + else + puts "[#{Time.current}] Scheduler 인스턴스 없음" + end end def running? - @scheduler&.running? + defined?(@scheduler) && @scheduler.jobs.any? end private