当前位置: 首页 > news >正文

网站网站建设教程网站描述

网站网站建设教程,网站描述,北京全网营销推广公司,那种做任务的网站叫什么使用范围 synchronized使用上用于同步方法或者同步代码块在锁实现上是基于对象去实现使用中用于对static修饰的便是class类锁使用中用于对非static修饰的便是当前对象锁 synchronized的优化 在jdk1.6中对synchronized做了相关的优化 锁消除 在synchronized修饰的代码块中…使用范围 synchronized使用上用于同步方法或者同步代码块在锁实现上是基于对象去实现使用中用于对static修饰的便是class类锁使用中用于对非static修饰的便是当前对象锁 synchronized的优化 在jdk1.6中对synchronized做了相关的优化 锁消除 在synchronized修饰的代码块中要是不涉及操作临界资源的情况即便你写了synchronized修饰也不会出发锁机制 锁膨胀 在一个循环中频繁的出现锁资源的获取与释放操作会带来资源的消耗于是便会将锁的范围扩大到循环的外边避免频繁的竞争和获取锁资源而导致的资源消耗 public void method(){for (int i 0; i Integer.MAX_VALUE; i) {synchronized () {// 业务代码}}}锁升级 ReentrantLock中是基于乐观锁的CAS获取线程资源。资源拿不到的情况下才会挂起线程。synchronized在jdk1.6之间完全获取不到锁的情况下立即挂起线程但是在1.6之后进行了锁的升级与优化。 无锁、匿名偏向当前对象没有作为锁的存在偏向锁当前锁资源只有一个线程频繁的获取和释放锁那么只有该线程获取锁是判断是否是同一个线程如果是线程资源拿走。如果线程不是当前自己的线程则采用基于CAS的方式尝试将偏向锁指向当前线程。如果获取不到则触发锁升级为轻量级锁也就意味着发生了锁竞争的情况。轻量级锁使用自旋锁的方式频繁的采用CAS的方式获取锁资源。这里采用的自适应自旋锁JVM更具上次的自旋结果来进行判断本次的自旋时间长短。如果成功获取锁资源资源取走。如果获取锁资源失败锁升级。重量级锁最为传统的synchronized实现方式。拿不到锁资源之间挂起线程然后进行用户态和内核态的不断切换。。。 synchronized锁的实现原理 synchronized锁是基于对象来进行实现的 关于MarkWord的内容展开示意图 从图中可以看出通过锁的标志位来进行区分锁的不同状态 synchronized锁升级的过程演示 使用之前需要导入一个依赖 dependencygroupIdorg.openjdk.jol/groupIdartifactIdjol-core/artifactIdversion0.9/version/dependency锁在默认情况下开启了偏向锁的延迟原因是因为在偏向锁升级为轻量级锁的时候会涉及到偏向锁的撤销需要等到一个安全点STW才能完成对偏向锁的撤销所以在并发的情况下就可以选择不开启偏向锁或者设置偏向锁延迟开启在JVM启动时会大量加载.class文件到内存该操作会涉及synchronized使用为了避免出现偏向锁撤销的操作。在启动初期有一个延迟5s开启偏向锁的操作。要是正常开启偏向锁那么就不会出现无锁的状态而是直接进入匿名偏向锁 变成了偏向锁 /*** author 舒一笑* date 2023/5/28*/ public class Test15 {public static void main(String[] args) throws InterruptedException {Thread.sleep(5000);Object o new Object();System.out.println(ClassLayout.parseInstance(o).toPrintable());//thread 线程偏向锁Thread thread new Thread(()-{synchronized (o){System.out.println(thread线程 ClassLayout.parseInstance(o).toPrintable());}});thread.start();// 轻量级锁 - 重量级锁synchronized (o){System.out.println(main线程 :ClassLayout.parseInstance(o).toPrintable());}}}锁转换状态示意图 LockRecord和ObjectMonitor存储的内容示意图
http://www.laogonggong.com/news/126213.html

相关文章:

  • 怎么看一个网站是否做竞价北京朝阳区公司
  • 网站域名如何管理学校网站建设费计入什么科目
  • phpcms 后台修改修改网站备案号兰州网站设计公司有哪些
  • wordpress 成绩管理seo是什么职位缩写
  • 怎样做网站的优化、排名磁力下载
  • 建立网站需要怎么做快速收录提交入口
  • 唐山网站排名推广seo全网优化推广
  • 茶叶响应式网站网站开发一般要用到哪些软件有哪些
  • 怎样做电影网站住房和城乡建设网站 上海
  • dw做的网站上传wordpress incategory
  • 上海建站模板网站宗亲网站开发
  • 广东省建设厅网站首页企业网站 开源php
  • 箱包设计网站网站开发的费用
  • wordpress如何设置网站地图卧室室内装修设计网站
  • 中国建设网官方网站硅灰flash怎么做电子书下载网站
  • 有什么做任务的网站wordpress 导入的模板
  • 城乡和住房建设部网站李青青做网站 公司主要做应用领域
  • 武夷山网站建设WordPress数据库名要填什么
  • 网站做到赣州第一名要多少钱seo整合营销
  • 经营网站 备案查询做游戏网站有几个要素
  • 如何创业做网站wordpress插件分享显示
  • wordpress 网校主题网站文章内容优化方案
  • 会网站建设好吗电子版简历
  • 如何开发一个手机网站备案需要写网站建设方案书
  • 宁波企业网站搭建特点wordpress 双域名
  • 上国外网站dns网站开发技术的选择
  • 怎么获取免费的网站域名wordpress主题模板源码
  • 网站开发框架拓扑搜索引擎seo排名优化
  • 环保局网站设计方案上海网站开发多少钱
  • 邢台建站企业邮箱wordpress调用二级分类