Synchronized 与 ReentrantLock 的区别
ReentrantLock lock的实现 :通过cas设置Sync的内部的stateoffset变量来确定当前锁是否被占有,如果可以占有江在sync中设置ownerThread为当前thread,如果不行,则添加到queue(node实现的链表)
ReentrantLock lock的实现 :通过cas设置Sync的内部的stateoffset变量来确定当前锁是否被占有,如果可以占有江在sync中设置ownerThread为当前thread,如果不行,则添加到queue(node实现的链表)