本文系 www.javady.com网站原创,转载请标明出处
线程池ExecutorService exec = Executors.newFixedThreadPool(100);
优点: 1、任务分配简单,任务少的情况下执行效率高 2、线程不需要控制,操作简单
缺点: 1、当每个任务执行时间很长的时候,占用的内存和cpu较多... 2、线程不需要控制,操作简单
推荐用法: 时间要求高效,每个任务的执行时间短,内存无要求,cpu无要求的情况
标准用法: 使用在要处理的任务不确定和随机的情况下,比如说 socket服务器端
阻塞队列
BlockingQueue<String> queue = new ArrayBlockingQueue<String>(10000);
优点: 1、时间上可以控制和计算,内存要求少,cpu要求小,性能不错..
缺点: 1、多线程,线程不好控制..性能调节需要丰富经验...线程数根据机器性能进行调优
标准用法: 生产者消费者模式...对服务器性能有要求的情况下 比如 客户端的请求....和服务器端的处理,也可以是socket服务器...