摘要:
一、Semaphore 信号灯 Semaphore 的构造方法中传入的第一个参数是最大信号量(可以看成最大线程池),每个信号量初始化为一个最多只能分发一个许可证。使用 acquire 方法获得许可证, release 方法释放许可。 在信号量上我们定义两种操作: acquire(获取) 当一个线程调 阅读全文
posted @ 2022-01-23 21:27
格物致知_Tony
阅读(44)
评论(0)
推荐(0)
摘要:
一、CyclicBarrier CyclicBarrier 的字面意思是可循环(Cyclic)使用的屏障(Barrier)。 它要做的事情是,让一组线程到达一个屏障(也可以叫同步点)时被阻塞,直到最后一个线程到达屏障时,屏障才会开门,所有被屏障拦截的线程才会继续干活。线程进入屏障通过CyclicBa 阅读全文
posted @ 2022-01-23 21:12
格物致知_Tony
阅读(67)
评论(0)
推荐(0)
摘要:
一、引入案例 假如说有6个同学在教室上自习(模拟6个线程),班长(主线程)拿着教室的钥匙,等到下课后,必须等所有的同学都离开了,班长才能锁门离开。如何实现? 普通的实现: private static void closeDoor() { for (int i = 0; i < 6; i++) { 阅读全文
posted @ 2022-01-23 21:01
格物致知_Tony
阅读(98)
评论(0)
推荐(0)