1
0
mirror of https://github.com/Snailclimb/JavaGuide synced 2025-06-20 22:17:09 +08:00

更新错别字

This commit is contained in:
Ghost 2019-02-27 16:22:00 +08:00 committed by GitHub
parent 534c942ac4
commit 3c51ae2de7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -168,4 +168,4 @@ synchronized 是依赖于 JVM 实现的,前面我们也讲到了 虚拟机团
**④ 性能已不是选择标准**
在JDK1.6之前synchronized 的性能是比 ReenTrantLock 差很多。具体表示为synchronized 关键字吞吐量线程数的增加下降得非常严重。而ReenTrantLock 基本保持一个比较稳定的水平。我觉得这也侧面反映了, synchronized 关键字还有非常大的优化余地。后续的技术发展也证明了这一点,我们上面也讲了在 JDK1.6 之后 JVM 团队对 synchronized 关键字做了很多优化。**JDK1.6 之后synchronized 和 ReenTrantLock 的性能基本是持平了。所以网上那些说因为性能才选择 ReenTrantLock 的文章都是错的JDK1.6之后性能已经不是选择synchronized和ReenTrantLock的影响因素了而且虚拟机在未来的性能改进中会更偏向于原生的synchronized所以还是提倡在synchronized能满足你的需求的情况下优先考虑使用synchronized关键字来进行同步优化后的synchronized和ReenTrantLock一样在很多地方都是用到了CAS操作**。
在JDK1.6之前synchronized 的性能是比 ReenTrantLock 差很多。具体表示为synchronized 关键字吞吐量线程数的增加下降得非常严重。而ReenTrantLock 基本保持一个比较稳定的水平。我觉得这也侧面反映了, synchronized 关键字还有非常大的优化余地。后续的技术发展也证明了这一点,我们上面也讲了在 JDK1.6 之后 JVM 团队对 synchronized 关键字做了很多优化。**JDK1.6 之后synchronized 和 ReenTrantLock 的性能基本是持平了。所以网上那些说因为性能才选择 ReenTrantLock 的文章都是错的JDK1.6之后性能已经不是选择synchronized和ReenTrantLock的影响因素了而且虚拟机在未来的性能改进中会更偏向于原生的synchronized所以还是提倡在synchronized能满足你的需求的情况下优先考虑使用synchronized关键字来进行同步优化后的synchronized和ReenTrantLock一样在很多地方都是用到了CAS操作**。