fix:定时任务初始化加锁

This commit is contained in:
jxxghp
2025-03-07 08:07:57 +08:00
parent a835d34a01
commit e1f82e338a
+13 -8
View File
@@ -30,6 +30,9 @@ from app.utils.singleton import Singleton
from app.utils.timer import TimerUtils
lock = threading.Lock()
class SchedulerChain(ChainBase):
pass
@@ -56,6 +59,15 @@ class Scheduler(metaclass=Singleton):
"""
初始化定时服务
"""
# 停止定时服务
self.stop()
# 调试模式不启动定时服务
if settings.DEV:
return
with lock:
# 各服务的运行状态
self._jobs = {
"cookiecloud": {
@@ -136,13 +148,6 @@ class Scheduler(metaclass=Singleton):
}
}
# 停止定时服务
self.stop()
# 调试模式不启动定时服务
if settings.DEV:
return
# 创建定时服务
self._scheduler = BackgroundScheduler(timezone=settings.TZ,
executors={
@@ -496,7 +501,6 @@ class Scheduler(metaclass=Singleton):
"""
if not self._scheduler:
return
# 移除该工作流的全部服务
self.remove_workflow_job(workflow)
# 添加工作流服务
@@ -625,6 +629,7 @@ class Scheduler(metaclass=Singleton):
"""
关闭定时服务
"""
with lock:
try:
if self._scheduler:
logger.info("正在停止定时任务...")