ThreadPoolExecutor的简单例子

来源:互联网 发布:玉溪软件 编辑:程序博客网 时间:2024/05/16 06:59
public class ThreadPoolTest {public static void main(String[] args) {BlockingQueue<Runnable> queue = new ArrayBlockingQueue<Runnable>(10000) ;System.err.println(Runtime.getRuntime().availableProcessors());ExecutorService executor = new ThreadPoolExecutor(Runtime.getRuntime().availableProcessors(),//核心线程池大小,开启多少个线程20,//最大线程池大小120L, //线程池中超过corePoolSize数目的空闲线程最大存活时间;可以allowCoreThreadTimeOut(true)使得核心线程有效时间TimeUnit.SECONDS, //keepAliveTime时间单位queue) ;//阻塞任务队列for(int i=0;i<100;++i){executor.execute(new MessageTask(i+""));}}}



public class MessageTask implements Runnable {private String message ;public MessageTask(String message) {this.message = message;}@Overridepublic void run() {System.out.println(Thread.currentThread().getName()+"---------->"+message);}}


总结:1. 类似ThreadPoolExecutor的还有 newCachedThreadPool、newFixedThreadPool、newScheduledThreadPool 和newSingleThreadExecutor;


参考文件:http://cuisuqiang.iteye.com/blog/2019372


未完待续....

原创粉丝点击