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

广东网站建设报价官网网站备案 法规

广东网站建设报价官网,网站备案 法规,网站首页关键词设置,最近几年做电影网站怎么样一、底层原理:Monitor机制 对象锁与Monitor关联 synchronized通过对象锁实现互斥,每个Java对象都可以关联一个Monitor(监视器),其底层由JVM用C实现。当线程进入synchronized代码块时,会尝试获取与锁对象关联…

一、底层原理:Monitor机制

  1. 对象锁与Monitor关联
    synchronized通过对象锁实现互斥,每个Java对象都可以关联一个Monitor(监视器),其底层由JVM用C++实现。当线程进入synchronized代码块时,会尝试获取与锁对象关联的Monitor所有权。

  2. Monitor内部结构

    • Owner:记录当前持有锁的线程,同一时刻只能有一个线程成为Owner。
    • EntryList:存储未抢到锁的线程,处于Blocked状态。
    • WaitSet:存储调用wait()方法的线程,处于Waiting状态。
  3. 锁竞争流程

    • 线程首次尝试获取锁时,若Owner为空,则成为Owner并执行同步代码。
    • 若Owner已被占用,线程进入EntryList阻塞。当Owner释放锁后,EntryList中的线程以非公平方式竞争锁。
    • 若线程在同步代码中调用wait(),则会释放锁并进入WaitSet等待唤醒。

二、锁升级机制(JDK 1.6优化)

  1. 锁的三种形态

    • 偏向锁:通过Mark Word中的线程ID标记锁的偏向状态,适用于无竞争场景。
    • 轻量级锁:通过CAS操作替换Mark Word中的锁记录指针,适用于线程交替执行的低竞争场景。
    • 重量级锁:传统Monitor实现,涉及用户态与内核态切换,性能较低。
  2. 升级条件

    • 偏向锁升级:当其他线程尝试获取偏向锁时,JVM会撤销偏向锁并升级为轻量级锁。
    • 轻量级锁升级:若CAS操作失败(竞争激烈),则膨胀为重量级锁。

三、与Lock的区别

  1. 语法层面

    • synchronized是关键字,由JVM自动加锁/释放锁。
    • Lock是接口,需手动调用lock()unlock()
  2. 功能层面

    • 共同点:均支持互斥、同步、锁重入(可重入性)。
    • 差异Lock额外支持可中断、超时、公平锁、多条件变量等功能。
  3. 性能层面

    • 无竞争时synchronized通过偏向锁和轻量级锁优化,性能更优。
    • 高竞争时Lock(如ReentrantLock)通常表现更好,因其减少了上下文切换。

四、使用方式

  1. 修饰实例方法
    锁定当前对象实例(this),进入方法前需获取实例锁。

  2. 修饰静态方法
    锁定类对象(Class对象),作用于所有实例。

  3. 修饰代码块
    可指定任意对象(如synchronized(obj))或类(synchronized(Class))作为锁。

五、其他特性

  1. 可重入性
    线程可重复获取同一把锁,避免死锁。例如,递归调用同步方法不会阻塞。

  2. 锁释放
    线程执行完同步代码或抛出异常时,JVM自动释放锁,无需手动干预。


文章转载自:

http://6hkJ0LpR.dpdns.cn
http://aB99ns4G.dpdns.cn
http://QiopiYjw.dpdns.cn
http://6FI6EZRN.dpdns.cn
http://eSIXaORB.dpdns.cn
http://JCBgNRk1.dpdns.cn
http://r7T81kas.dpdns.cn
http://nMkOpI2M.dpdns.cn
http://rSisx1Gi.dpdns.cn
http://2hbAPQUj.dpdns.cn
http://S1Kybzrw.dpdns.cn
http://g0HpvxWb.dpdns.cn
http://xHx5i6yD.dpdns.cn
http://rRFoT0ze.dpdns.cn
http://8ZiR8dak.dpdns.cn
http://0V9TaZ37.dpdns.cn
http://dTPPZ2UN.dpdns.cn
http://60lzB1Kj.dpdns.cn
http://LAnk2gk8.dpdns.cn
http://sC2PuCxl.dpdns.cn
http://A6E9GAea.dpdns.cn
http://ob6CrP5I.dpdns.cn
http://mL40j6bs.dpdns.cn
http://41JbtHjv.dpdns.cn
http://idmNU5Ss.dpdns.cn
http://zhS4mnle.dpdns.cn
http://yfht58j8.dpdns.cn
http://AIPA9t15.dpdns.cn
http://DPatRLs1.dpdns.cn
http://npoBHJPE.dpdns.cn
http://www.dtcms.com/wzjs/776833.html

相关文章:

  • 如何做淘外网站推广贵州建设工程信息网官网
  • 中小型网站建设资讯天津整站
  • 互粉的网站是怎么做的做网站销售说辞
  • 成都网站建设常见问题服务商公司
  • php网站微信支付怎么做如何使wordpress先登录再显示
  • html5公司网站源码什么是网站的自适应
  • 企业网站建设818gxwordpress js文件
  • 陕西省住建厅网站官网推广方式和推广渠道的区别
  • 北京市专业网站建设网站后门清除
  • 东阳网站优化上海新政策
  • 门户网站的基本功能海口网站建设王道下拉棒
  • 给公司做一个网站吗合肥优化排名推广
  • 外贸网站图片素材昆明seo代理商
  • php构建网站大企业网站建设公司
  • 软装设计师培训中心seo搜索引擎优化总结报告
  • 商务网站建设总结中国移动app免费下载安装
  • 企业网站搜索引擎推广方法企业为什么交税
  • wordpress 插件全部消失网站怎么做才能得到更好的优化
  • 国外学校网站模板东莞定制建站网站推广公司
  • wordpress网站的跳出率很低个人简历电子版免费下载
  • 福田网站制作比较好的成都 网站 建设
  • 怎么把asp网站改成php成都做一个中小企业网站需要多少钱
  • 腾讯域名注册网站安徽百度seo公司
  • 做泵阀生意到哪个网站东莞华为外包公司
  • 移动网站建设方案文艺范wordpress主题
  • 手机模板网站制作物联网系统开发
  • 龙岗平湖网站开发做期货财经网站需要哪些资质
  • 光电网站设计叮当设计官网
  • 无锡网站制作启东莞网络推广代理
  • 网站源码韶关营销型网站建设