2024年1月31日发(作者:)
public class MyRunnableC implements Runnable { private String name;
public MyRunnableC(String name) { super(); = name; } @Override public void run() { try { while(true) { if(tThread().isInterrupted()==true) { throw new InterruptedException(); } n(name+" run start "+ tTimeMillis()); (1); } } catch (InterruptedException e) { tackTrace(); n("线程中断了"); }
}}** public static void main(String[] args) { ScheduledThreadPoolExecutor pool = new ScheduledThreadPoolExecutor(1); Runnable a = new MyRunnableC("A"); ScheduledFuture fua = le(a, 0, S); BlockingQueue
测试结果A run start 16queue size 0A run start 16truequeue size 0main uptedException: sleep interruptedat (Native Method)at (Unknown Source)at (Unknown Source)at (:22)at (UnknownSource)(UnknownSource)201(UnknownSource)(Unknown Source)at ker(Unknown Source)at PoolExecutor$(Unknown Source)at (Unknown Source)线程中断了取消任务并且删除队列中的任务public static void main(String[] args) { ScheduledThreadPoolExecutor pool = new ScheduledThreadPoolExecutor(1); Runnable a = new MyRunnableC("A"); ScheduledFuture fua = le(a, 1, S); oveOnCancelPolicy(true); n((true)); BlockingQueue


发布评论