AQS-为什么只有前驱节点是头节点才能尝试获取同步状态

为什么会有这疑问,关键代码如下: 可以发现,p就是当前node节点对象的前驱节点,而只有当p是头节点时,判断才不会短路,才能去尝试获取同步状态。否则的话,就会走shouldParkAfterFailedAcquire()方法: 通过shouldParkAfterFailedAcquire()方法,会让前驱节点不是头节点的节点进入等待。 这时就会有为什么只有前驱节点是头节点才能尝试获取同步状态的疑问
相关文章
相关标签/搜索