J.U.C之AQS—RentrantLock-Part-2 发表于 2018-08-03 | 更新于: 2018-08-03 | 分类于 Java之并发编程 | 阅读次数: 字数统计: 697 字 | 阅读时长 ≈ 4 分钟 这部分还是接着上部分的源码学习。 阅读全文 »
J.U.C之AQS—RentrantLock-Part-1 发表于 2018-08-03 | 更新于: 2018-08-03 | 分类于 Java之并发编程 | 阅读次数: 字数统计: 2,459 字 | 阅读时长 ≈ 12 分钟 概述RentrantLock即重入锁,是JDK中J.U.C提供的最重要的锁。通过自旋锁实现RentrantLock:循环调用CAS操作实现枷锁,即阻止线程进入内核态被阻塞,故而效率较高。 阅读全文 »
J.U.C之AQS—Condition 发表于 2018-08-03 | 更新于: 2018-08-03 | 分类于 Java之并发编程 | 阅读次数: 字数统计: 1,329 字 | 阅读时长 ≈ 6 分钟 概述他是一个接口类。 演示例子 阅读全文 »
J.U.C之AQS—CyclicBarrier 发表于 2018-08-02 | 更新于: 2018-08-02 | 分类于 Java之并发编程 | 阅读次数: 字数统计: 2,252 字 | 阅读时长 ≈ 12 分钟 概述CyclicBarrier也是JDK提供的辅助类。它允许一组线程相互等待,直到到达一个公共的屏障点(CommonBarrierPoint)。通过它可以使多个线程间相互等待,只有当每个线程都准备就绪后才能各自继续执行后面的操作。 阅读全文 »
J.U.C之AQS—Semaphore 发表于 2018-08-02 | 更新于: 2018-08-02 | 分类于 Java之并发编程 | 阅读次数: 字数统计: 2,649 字 | 阅读时长 ≈ 13 分钟 概述Semaphore字面意思就是信号量。它通过提供同步机制,控制资源可同时被并发访问的线程的个数。当信号量限定为1时,它就和单线程很相似了。Semaphore和CountDownLatch的使用有些相似,其中也有两个核心实现方法:acquire()和release()。 通过semaphore可以实现有限结点个数的链表,虽然可重入锁reentrant也可以实现,但是semaphore的实现更为简单。 阅读全文 »