最新 最热

Java锁的升级过程:从偏向锁到重量级锁的演进

Java中的锁是多线程编程中重要的同步机制。在并发环境下,锁的性能和效率对系统的性能和可伸缩性至关重要。Java的锁机制在不同的场景下会采用不同的锁升级策略,从最轻量级的偏向锁到最重量级的重量级锁。本博客将深入探...

2023-05-30
1

深入理解JUC:第三章:AtomicReference原子引用

第一章讲解了volatile不保证原子性,为解决原子性使用了AtomicInteger原子整型,解决了基本类型运算操作的原子性的问题,那我们自定义的实体类或者基本数据类型都要保证原子性呢?使用AtomicReference原子引用...

2022-08-18
2

深入理解JUC:第四章:CountDownLatch倒计时器

CountDownLatch是一个非常实用的多线程控制工具类。常用的就下面几个方法:

2022-08-18
2

深入理解JUC:第五章:CyclicBarrier循环栅栏

举个例子,就像生活中我们会约朋友们到某个餐厅一起吃饭,有些朋友可能会早到,有些朋友可能会晚到,但是这个餐厅规定必须等到所有人到齐之后才会让我们进去。这里的朋友们就是各个线程,餐厅就是 CyclicBarrier。 未使用循环...

2022-08-18
2

深入理解JUC:第六章:Semaphore信号灯

Semaphore 是 synchronized 的加强版,作用是控制线程的并发数量

2022-08-18
2

面试官问我懂不懂AQS和ReentrantLock,我把这篇文章甩给他

AbstractQueuedSynchronizer抽象队列同步器——用于构建锁或其他同步组件的基础框架

2022-03-31
2