面试必问之AQS原理详解.pdf

时间:2020-08-08 15:01:58
【文件属性】:
文件名称:面试必问之AQS原理详解.pdf
文件大小:501KB
文件格式:PDF
更新时间:2020-08-08 15:01:58
AQS AQS 原理 lock 最 常 用 的 类 就 是 ReentrantLock , 其 底 层 实 现 使 用 的 是 AbstractQueuedSynchronizer(AQS) 简单来说 AQS 会把所有的请求线程构成一个 CLH 队列,当一个线程执行完毕 (lock.unlock())时会激活自己的后继节点,但正在执行的线程并不在队列中, 而那些等待执行的线程全部处于阻塞状态,经过调查线程的显式阻塞是通过调用 LockSupport.park() 完成,而 LockSupport.park() 则调用 sun.misc.Unsafe.park()本地方法,再进一步,HotSpot 在 Linux 中中通过调用 pthread_mutex_lock 函数把线程交给系统内核进行阻塞。

网友评论