JVM在1.6后对Synchronized的优化
JVM在jdk1.6中引入了分级锁机制来优化Synchronized,当一个线程获取锁时,首先对象锁将成为一个偏向锁,这样做是为了优化同一线程重复获取锁导致的用户态与内核态的切换问题;其次如果有多个线程竞争锁资源,锁将会升级为轻量级锁,它适用于在于短时间内持有锁,且分锁有交替切换的场景;轻量级锁还使用了自旋锁来避免线程用户态和内核用户态的频繁切换,大大地提高了系统性能;但如果锁竞争太激烈了,那么同步锁将会升级为重量级锁。
减少锁竞争,是优化Synchronized同步锁的关键。我们应该尽量使Synchron
原创
2021-02-18 14:11:11 ·
363 阅读 ·
0 评论