摘要: ThreadPoolExecutor是JDK并发包提供的一个线程池服务,基于它可以很容易将一个Runnable接口的任务放入线程池中。ThreadPoolExecutor的构建参数: public ThreadPoolExecutor(int corePoolSize, int maximumPoo 阅读全文
posted @ 2016-05-04 16:28 简单爱_wxg 阅读(487) 评论(0) 推荐(0) 编辑
摘要: 以下是jdk关于CompletionService的简介: public interface CompletionService<V> 将生产新的异步任务与使用已完成任务的结果分离开来的服务。生产者submit 执行的任务。使用者take已完成的任务,并按照完成这些任务的顺序处理它们的结果。例如,C 阅读全文
posted @ 2016-05-04 15:06 简单爱_wxg 阅读(359) 评论(0) 推荐(0) 编辑
摘要: 1、强引用(StrongReference) 强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。如下: 1 Object o=new Object(); // 强引用 1 Object o=new Object(); // 强引用 1 Object o=new Object 阅读全文
posted @ 2016-04-27 14:30 简单爱_wxg 阅读(838) 评论(0) 推荐(0) 编辑
摘要: Executor框架分离了任务的创建和执行。JAVA SE5的java.util.concurrent包中的执行器(Executor)管理Thread对象,从而简化了并发编程。Executor引入了一些功能类来管理和使用线程Thread,其中包括线程池,Executor,Executors,Exec 阅读全文
posted @ 2016-04-26 16:38 简单爱_wxg 阅读(488) 评论(0) 推荐(0) 编辑
摘要: Phaser允许并发多阶段任务。Phaser类机制是在每一步结束的位置对线程进行同步,当所有的线程都完成了这一步,才允许执行下一步。 一个Phaser对象有两种状态: 活跃态(Active):当存在参与同步的线程的时候,Phaser就是活跃的,并且在每个阶段结束的时候进行同步。 终止态(Termin 阅读全文
posted @ 2016-04-25 17:14 简单爱_wxg 阅读(2140) 评论(1) 推荐(0) 编辑
摘要: Exchanger并发辅助类,允许在并发任务之间交换数据。具体来说Exchanger类在两个线程之间定义同步点。当两个线程到达同步点时,它们交换数据结构。需要注意的是Exchanger类只能同步两个线程。 <!-- Generated by javadoc (build 1.6.0-beta2) o 阅读全文
posted @ 2016-04-25 15:56 简单爱_wxg 阅读(959) 评论(0) 推荐(0) 编辑
摘要: 一、属性 Buffer有四个基本属性: 1、capacity 容量,buffer能够容纳的最大元素数目,在Buffer创建时设定并不能更改 2、limit buffer中有效位置数目,不能对超过limit中的区域进行读写。 3、position 下一个读或者写的位置 4、mark 用于记忆的标志位, 阅读全文
posted @ 2016-04-23 20:22 简单爱_wxg 阅读(10648) 评论(0) 推荐(0) 编辑
摘要: <!-- Generated by javadoc (build 1.6.0-beta2) on Mon Mar 19 18:27:29 CST 2007 --> 一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point)。在涉及一组固定大小的线程的 阅读全文
posted @ 2016-04-23 16:26 简单爱_wxg 阅读(1276) 评论(0) 推荐(0) 编辑
摘要: 一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。 用给定的计数 初始化 CounDownLatch。由于调用了countDown() 方法,所以在当前计数到达零之前,await()方法会一直受阻塞。之后,会释放所有等待的线程,await()的所有后续调用都将立即 阅读全文
posted @ 2016-04-23 15:02 简单爱_wxg 阅读(1890) 评论(0) 推荐(0) 编辑
摘要: Semaphore(信号量):是一种计数器,用来保护一个或者多个共享资源的访问。如果线程要访问一个资源就必须先获得信号量。如果信号量内部计数器大于0,信号量减1,然后允许共享这个资源;否则,如果信号量的计数器等于0,信号量将会把线程置入休眠直至计数器大于0.当信号量使用完时,必须释放。 实例代码: 阅读全文
posted @ 2016-04-22 19:26 简单爱_wxg 阅读(20646) 评论(0) 推荐(3) 编辑