From 934093f2388e042c0c4906d9259d2b11309dd692 Mon Sep 17 00:00:00 2001 From: xxssyyyyssxx Date: Wed, 11 Nov 2020 09:59:01 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E4=BC=98=E9=9B=85=E7=9A=84=E7=AD=89?= =?UTF-8?q?=E5=BE=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xxl-job-core/pom.xml | 2 +- .../sample/frameless/Application.java | 26 +++++++++++++------ 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/xxl-job-core/pom.xml b/xxl-job-core/pom.xml index 68f36292..52f17987 100644 --- a/xxl-job-core/pom.xml +++ b/xxl-job-core/pom.xml @@ -56,7 +56,7 @@ top.jfunc.common utils - 1.8.2.3 + 1.8.3.5 diff --git a/xxl-job-executor-samples/xxl-job-executor-sample-frameless/src/main/java/com/xuxueli/executor/sample/frameless/Application.java b/xxl-job-executor-samples/xxl-job-executor-sample-frameless/src/main/java/com/xuxueli/executor/sample/frameless/Application.java index fda416e6..73e9ab4b 100644 --- a/xxl-job-executor-samples/xxl-job-executor-sample-frameless/src/main/java/com/xuxueli/executor/sample/frameless/Application.java +++ b/xxl-job-executor-samples/xxl-job-executor-sample-frameless/src/main/java/com/xuxueli/executor/sample/frameless/Application.java @@ -3,8 +3,7 @@ package com.xuxueli.executor.sample.frameless; import com.xuxueli.executor.sample.frameless.config.FrameLessXxlJobConfig; import org.slf4j.Logger; import org.slf4j.LoggerFactory; - -import java.util.concurrent.TimeUnit; +import top.jfunc.common.thread.HoldProcessor; /** * @author xuxueli 2018-10-31 19:05:43 @@ -18,16 +17,27 @@ public class Application { // start FrameLessXxlJobConfig.getInstance().initXxlJobExecutor(); - while (true) { - TimeUnit.HOURS.sleep(1); - } + waitHere(); } catch (Exception e) { logger.error(e.getMessage(), e); - } finally { - // destory - FrameLessXxlJobConfig.getInstance().destoryXxlJobExecutor(); } } + private static void waitHere() { + final HoldProcessor holdProcessor = new HoldProcessor(); + holdProcessor.startAwait(); + logger.info("程序开始等待"); + Runtime.getRuntime().addShutdownHook(new Thread(){ + @Override + public void run() { + logger.info("收到kill 信号,执行清理程序"); + //在关闭的时候释放资源 + FrameLessXxlJobConfig.getInstance().destoryXxlJobExecutor(); + holdProcessor.stopAwait(); + } + }); + } + + }