AQS-新加入的节点是怎么进入队列的

首先节点会进入队列,肯定是竞争同步状态失败了,所以会调用addWaiter()方法来入队,addWaiter()方法如下: 如截图中所示,在这个方法中,会构建出一个与当前线程相关的新节点,然后判断尾节点是否不为null,如果不为null,则说明队列已经初始化成功了,那么就把新的节点设置为尾节点,如果尾节点为空,那么说明队列还没完成初始化,那么就走enq()方法,enq()方法如下: 如上截图,en
相关文章
相关标签/搜索