做网站注册商标,一般云主机可以做视频网站吗,如何查找未备案网站,平面设计网格推荐链接#xff1a; 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 总结——》【Linux】 总结——》【MongoD… 推荐链接 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 总结——》【Linux】 总结——》【MongoDB】 总结——》【Elasticsearch】 Java——》JVM对原生的锁做了哪些优化 优化1使用自旋锁优化2提供了3种不同的Monitor实现3种不同的锁 在Java6之前Monitor的实现完全依赖底层操作系统的互斥锁来实现由于Java层面的线程与操作系统的原生线程有映射关系如果要将一个线程进行阻塞或唤起都需要操作系统的协助这就需要从用户态切换到内核态来执行这种切换代价十分昂贵很消耗处理器时间现代JDK中做了大量的优化。 优化1使用自旋锁
在线程进行阻塞操作之前先让线程自旋等待一段时间可能在等待期间其他线程已经解锁这时就无需再让线程执行阻塞操作避免了用户态到内核态的切换。
优化2提供了3种不同的Monitor实现3种不同的锁
偏向锁轻量级锁重量级锁
当JVM检测到不同的竞争状况时会自动切换到适合的锁实现这就是锁的升级、降级Java——》synchronized锁升级。