- 博客(3)
- 资源 (4)
- 收藏
- 关注
原创 Semaphore使用
Semaphore 实现了信号量,概念上讲,一个信号量相当于持有一些许可(permits),线程可以调用Semaphore对象的acquire()方法获取一个许可,调用release()来归还一个许可。信号量一般用来限制访问资源的线程数量1 构造方法: Semaphore有两个构造方法 Semaphore(int)、Semaphore(int,boolean),参数中的int表示该信号量拥...
2018-06-10 22:28:42 2309
原创 CyclicBarrier使用
CyclicBarrier顾名思义循环栅栏,可以理解为障碍点,需要定义的所有线程都到达障碍点之后,线程才能继续往下执行。与CountDownLatch不同的是,一组线程都需要阻塞等待,直到所有线程达到障碍点。CountDownLatch是一个线程等待,直到其他线程发来消息多个线程间共用一个CyclicBarrier对象,每个线程调用await()方法到达栅栏处示例public class UseC...
2018-06-10 19:59:00 227
原创 CountDownLatch使用
概念CountDownLatch是通过一个计数器来实现的,计数器的初始值为线程的数量。每当一个线程完成了自己的任务后,计数器的值就会减1。当计数器值到达0时,它表示所有的线程已经完成了任务,然后在闭锁上等待的线程就可以恢复执行任务。主要方法:await() ------》线程阻塞,知道计数器的值为0countDown()--------》计数器数量减一示例:public static void m...
2018-06-10 19:16:03 141
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人