java并发集合的优缺点

来源:互联网 发布:摩歌摄影怎么样知乎 编辑:程序博客网 时间:2024/05/21 18:37

本文系 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服务器...