From 99ce81ed5115a70892de35a864bf0e74debfcd78 Mon Sep 17 00:00:00 2001 From: hashmaparraylist Date: Fri, 12 May 2023 11:16:17 +0800 Subject: [PATCH] =?UTF-8?q?fix(thread):=20=E4=BF=AE=E5=A4=8DSpringContext?= =?UTF-8?q?=E9=87=8D=E5=90=AF=E5=90=8E=EF=BC=8C=E4=B8=89=E4=B8=AA=E5=8D=95?= =?UTF-8?q?=E4=BE=8BThread=E6=B2=A1=E6=9C=89=E5=86=B2=E6=B4=97=E5=90=AF?= =?UTF-8?q?=E5=8A=A8=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Spring Context重启时,调用了stop()方法,将标志位toStop设为true了。由于三个Thread都是单例模式,Spring Context重启时,不会重新实例化三个Thread,导致标志位toStop 一直为true。 Closes #2874 --- .../java/com/xxl/job/core/thread/ExecutorRegistryThread.java | 1 + .../main/java/com/xxl/job/core/thread/JobLogFileCleanThread.java | 1 + .../main/java/com/xxl/job/core/thread/TriggerCallbackThread.java | 1 + 3 files changed, 3 insertions(+) diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/thread/ExecutorRegistryThread.java b/xxl-job-core/src/main/java/com/xxl/job/core/thread/ExecutorRegistryThread.java index e43a2a49..ab332db4 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/thread/ExecutorRegistryThread.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/thread/ExecutorRegistryThread.java @@ -35,6 +35,7 @@ public class ExecutorRegistryThread { return; } + toStop = false; registryThread = new Thread(new Runnable() { @Override public void run() { diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobLogFileCleanThread.java b/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobLogFileCleanThread.java index b5691542..6ee9f72a 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobLogFileCleanThread.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobLogFileCleanThread.java @@ -34,6 +34,7 @@ public class JobLogFileCleanThread { return; } + toStop = false; localThread = new Thread(new Runnable() { @Override public void run() { diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/thread/TriggerCallbackThread.java b/xxl-job-core/src/main/java/com/xxl/job/core/thread/TriggerCallbackThread.java index 40acac00..27cdb046 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/thread/TriggerCallbackThread.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/thread/TriggerCallbackThread.java @@ -54,6 +54,7 @@ public class TriggerCallbackThread { return; } + toStop = false; // callback triggerCallbackThread = new Thread(new Runnable() {