首页 > 编程语言 > 详细

Java 笔记

时间:2015-08-03 20:41:21      阅读:211      评论:0      收藏:0      [点我收藏+]

1.LoggerFactory.getLogger 系统日志用法

  引用的jar包:import org.slf4j.Logger; import org.slf4j.LoggerFactory;

  解释:在日志输出的时候,可以打印出日志信息所在类

  举例: Logger log=LoggerFactory.getLogger(AVC.class);   运行的时候打印AVC这个类的日志信息

2.ExecutorService线程池

  引用的jar包:import java.util.concurrent.ExecutorService;

  用法: 

ExecutorService executorService =Executors.newFixedThreadPool(cpuNums * POOL_SIZE); //ExecutorService通常根据系统资源情况灵活定义线程池大小
excuService.submit(initCategoryListTask); //initCategoryListTask 方法名

 3.Callable接口

 引用的jar 包:import java.util.concurrent.Callable;

 解释:  适用于多线程并发,并且每个线程有返回值 的情况下   实现的方法名叫call   注意jdk1.5版本之后才可用

 参考:http://www.cnblogs.com/whgw/archive/2011/09/28/2194760.html

4.CompletionService 批处理任务

引用的jar包:import java.util.concurrent.CompletionService;

解释:    

CompletionService采取的是BlockingQueue<Future<V>>无界队列来管理Future。则 有一个线程执行完毕把返回结果放到BlockingQueue<Future<V>>里面。就可以通过 completionServcie.take().get()取出结果。

take 方获取并移除表示下一个已完成任务的 Future,如果目前不存在这样的任务,则等待。<如果需要用到返回值建议用take>

poll 获取并移除表示下一个已完成任务的 Future,如果不存在这样的任务,则返回null。

 

 

 

 

 

 

 拓展:Eclipse  快捷键 ctrl 鼠标放到方法名上可跟踪此方法的具体实现

Java 笔记

原文:http://www.cnblogs.com/liujinfang/p/4699574.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!