当前位置 : 主页 > 编程语言 > java >

关闭线程池标准方法

来源:互联网 收集:自由互联 发布时间:2021-06-28
正确关闭线程池 private void monitorTask(ExecutorService executorService) { while (getState() != InfoSystemStateEnum.ONLINE.getState()) { //通知线程池关闭(不再接收新任务) executorService.shutdown(); try { //历史任务
正确关闭线程池
private void monitorTask(ExecutorService executorService) {
        while (getState() != InfoSystemStateEnum.ONLINE.getState()) {
            //通知线程池关闭(不再接收新任务)
            executorService.shutdown();
            try {
                //历史任务是否执行完毕
                if (!executorService.awaitTermination(5000, TimeUnit.MILLISECONDS)) {
                    //强制终止正在执行的任务
                    executorService.shutdownNow();
                }
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
网友评论