摘要: 是什么? 当队列是空的,从队列中获取元素的操作将会被阻塞。 当队列是满的,从队列中添加元素的操作将会被阻塞。 用处: 在多线程领域:所谓阻塞,在某些情况下会挂起线程(即阻塞),一旦条件满足,被挂起的线程又会被自动唤醒。 BlockingQueue会自动完成挂起和唤醒。 ArrayBlockingQu 阅读全文
posted @ 2020-03-15 22:04 常温的冰 阅读(179) 评论(0) 推荐(0)
摘要: 读锁也叫共享锁 写锁也叫独享锁 读锁写锁都会造成死锁的问题 class MyCache{ private volatile Map<String,String> map = new HashMap<>(); private ReadWriteLock rwLock = new ReentrantRe 阅读全文
posted @ 2020-03-15 18:15 常温的冰 阅读(123) 评论(0) 推荐(0)
摘要: public class SemaphoreDemo { public static void main(String[] args) { //三个停车位 Semaphore sp = new Semaphore(3); //停六个汽车 for (int i = 1; i <=6 ; i++) { 阅读全文
posted @ 2020-03-15 14:07 常温的冰 阅读(97) 评论(0) 推荐(0)
摘要: CyclicBarrier public class CyclicBarrierDemo { public static void main(String[] args) { CyclicBarrier cyclicBarrier = new CyclicBarrier(7,()->{ System 阅读全文
posted @ 2020-03-15 14:03 常温的冰 阅读(153) 评论(0) 推荐(0)