摘要: 1. 概念 阻塞队列的概念和前面提到的缓冲区的概念类似,常见一个固定长队的队列 ,如果队列满的时候 put数据则一致会阻塞等待,直到队列数据被取走后会立即执行put数据操作同样的道理,如果队列为空时进行取数据take操作,则一直会阻塞等待,知道有线程执行了put数据到队列中后才会立即执行take... 阅读全文
posted @ 2014-06-19 17:55 廖凯林 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 1.CyclicBarrier 表示大家彼此等待,大家集合好后才开始出发,分散活动后又在指定地点集合碰面package org.lkl.thead.foo;import java.util.concurrent.CyclicBarrier;import java.util.concurrent.E... 阅读全文
posted @ 2014-06-19 17:06 廖凯林 阅读(396) 评论(0) 推荐(0) 编辑
摘要: 1.概念 Semaphore可以维护当前访问自身的线程个数,并提供了同步机制。使用Semaphore可以控制同时访问资源的线程个数,例如,实现一个文件允许的并发访问数2.案例package org.lkl.thead.foo;import java.util.concurrent.Executo... 阅读全文
posted @ 2014-06-19 15:55 廖凯林 阅读(459) 评论(0) 推荐(0) 编辑
摘要: 1.目标 假定有一个绑定的缓冲区,它支持 put 和 take 方法。如果试图在空的缓冲区上执行 take操作,则在某一个项变得可用之前,线程将一直阻塞;如果试图在满的缓冲区上执行 put操作,则在有空间变得可用之前,线程将一直阻塞。我们喜欢在单独的等待 set 中保存 put 线程和 take线程... 阅读全文
posted @ 2014-06-19 15:21 廖凯林 阅读(1100) 评论(2) 推荐(0) 编辑