自动化立体仓库 - WMS系统
#
luxiaotao1123
2020-07-04 b1a9eacb3aecbfb44e6d4cc9468983b748fe4307
#
1个文件已添加
1个文件已修改
67 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/task/TestScheduler.java 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/WcsDispatcher.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/TestScheduler.java
@@ -1,22 +1,35 @@
package com.zy.asrs.task;
import com.core.common.DateUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.Async;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.util.Date;
/**
 * Created by vincent on 2020/6/30
 */
@Component
//@Component
public class TestScheduler {
    private static final Logger logger = LoggerFactory.getLogger(TestScheduler.class);
    @Scheduled(cron = "0/3 * * * * ? ")
    public void test(){
//        logger.info("=====");
    @Async
    public void test() throws InterruptedException {
        while (true) {
            //模拟耗时任务,阻塞10s
            Thread.sleep(10000);
            break;
        }
    }
    @Scheduled(cron = "0/3 * * * * ? ")
    @Async
    public void test1() throws InterruptedException {
        System.out.println(DateUtils.convert(new Date()));
    }
}
src/main/java/com/zy/asrs/task/WcsDispatcher.java
New file
@@ -0,0 +1,46 @@
package com.zy.asrs.task;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
/**
 * 任务中心调度器
 * Created by vincent on 2020/7/4
 */
@Component
public class WcsDispatcher {
    private static Logger log = LoggerFactory.getLogger(WcsDispatcher.class);
    private Thread thread;
    @PostConstruct
    private void start(){
        thread = new Thread(() -> {
            while (!Thread.currentThread().isInterrupted()) {
                try {
                    Thread.sleep(3000);
                } catch (Exception e) {
                    log.error("Exception", e);
                }
            }
        });
        thread.start();
        log.info("任务中心调度器已启动......");
    }
    @PreDestroy
    public void shutDown(){
        if (thread != null)
            thread.interrupt();
        log.info("任务中心调度器已停止......");
    }
}