掉了两根头发,可算是把volatile整明白了
为什么只能保证可见性?又是怎么实现禁用指令重排?哇,原来这么简单
synchronized和volatile关键字实现和底层原理详解
需要有一个地方来存储抢占锁的标记,否则当其他线程来抢占资源时,不知道当前是应该正常执行还是应该排队。实际上,这个锁标记是存储在对象头中的。
为什么只能保证可见性?又是怎么实现禁用指令重排?哇,原来这么简单
需要有一个地方来存储抢占锁的标记,否则当其他线程来抢占资源时,不知道当前是应该正常执行还是应该排队。实际上,这个锁标记是存储在对象头中的。