标签:style blog color io 使用 div sp 代码 log
1 while(true){ 2 try { 3 sleep(1000); 4 } catch (InterruptedException e) { 5 // TODO Auto-generated catch block 6 e.printStackTrace(); 7 } 8 }
像如上代码,使用ExecutorService对象调用shutdownNow方法或shutdown方法,线程都不会停止。要想停止线程需要改成如下代码:
1 while (!Thread.interrupted()) { 2 3 4 5 try { 6 sleep(1000); 7 } catch (InterruptedException e) { 8 e.printStackTrace(); 9 //终结循环 10 Thread.currentThread().interrupt(); 11 }
shutdownNow方法与shutdown方法的区别:
1、shutdown方法: 这个方法,只能立刻interrupt那些目前没有任务,处于等待状态从blockingQueue获取任务的异常。而不能interrupt那些在任务执行过程中的thread,或者是任务执行过程中挂起的thread。
2、shutdownNow方法: 不管任务是否在执行中,一律interrupt,不去判断什么锁不锁。
标签:style blog color io 使用 div sp 代码 log
原文地址:http://www.cnblogs.com/l2rf/p/3974861.html