zoukankan      html  css  js  c++  java
  • setExecuteExistingDelayedTasksAfterShutdownPolicy方法与setContinueExistingPeriodicTasksAfterShutdownPolicy方法的比较

    一、setExecuteExistingDelayedTasksAfterShutdownPolicy方法

        这个方法大多是与schedule方法和shutdown方法搭配使用的。

       public void setExecuteExistingDelayedTasksAfterShutdownPolicy(boolean value);

       对value值的分析

    情况一、

    展示代码:

    		executor.setExecuteExistingDelayedTasksAfterShutdownPolicy(true);
    		executor.shutdown();

    当是true时,在执行shutdown方法后,当前正在等待的任务的和正在运行的任务需要被执行完,然后进程被销毁;

    情况二、

    展示代码:

    		executor.setExecuteExistingDelayedTasksAfterShutdownPolicy(false);
    		executor.shutdown();

    是false时,表示放弃等待的任务,正在运行的任务一旦完成,则进程被销毁,对与cheduleAtFisedRate方法和scheduleWithFixedDelay方法,则会打断循环,只执行当前正在执行的任务,不会对他们在进行循环执行

    二、setContinueExistingPeriodicTasksAfterShutdownPolicy(boolean value)

        这个方法大多是与cheduleAtFisedRate方法和scheduleWithFixedDelay方法搭配使用的

    对value值的分析:

    情况一、

    executor.setContinueExistingPeriodicTasksAfterShutdownPolicy(true);
    executor.shutdown();

    当是true时,在cheduleAtFisedRate方法和scheduleWithFixedDelay方法提交的任务会继续循环执行

    情况二、

    executor.setContinueExistingPeriodicTasksAfterShutdownPolicy(false);
    executor.shutdown();
    

    当是false时,

    在cheduleAtFisedRate方法和scheduleWithFixedDelay方法提交的任务不会被循环执行,但是会将等待的任务执行完毕,然后进程被销毁

  • 相关阅读:
    Qt类继承关系图
    回归Qt——写在Qt5.10发布之日
    Jdk1.7下的HashMap源码分析
    Jdk1.8下的HashMap源码分析
    八皇后||算法
    设计模式之一单例模式
    多线程之美8一 AbstractQueuedSynchronizer源码分析<二>
    多线程之美7一ReentrantReadWriteLock源码分析
    多线程之美6一CAS与自旋锁
    多线程之美5一 AbstractQueuedSynchronizer源码分析<一>
  • 原文地址:https://www.cnblogs.com/l1019/p/6769632.html
Copyright © 2011-2022 走看看