JAVA进阶之路-ReentrantLock的公平锁和非公平锁

经过学习AQS的原理,咱们了解到,AQS内部是经过一个FIFO同步队列来完成同步状态的管理。当线程获取当前状态的时候(内部其实就是更新操做),同步器会将当前的状态构建成一个node节点对象,将其放入到同步队列中,同时底层调用LockSupport.park(this)来阻塞当前线程,释放cpu。当同步状态释放的时候,会把首节点进行环形,使其再次尝试获取同步状态。node 那么内部的公平和非公平是如
相关文章
相关标签/搜索