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

北镇建设局网站小学生做网站步骤

北镇建设局网站,小学生做网站步骤,网站建设额,docker 做网站文章底部有个人公众号#xff1a;热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享#xff1f; 踩过的坑没必要让别人在再踩#xff0c;自己复盘也能加深记忆。利己利人、所谓双赢。 面试官#xff1a;说一说synchronized的底… 文章底部有个人公众号热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享 踩过的坑没必要让别人在再踩自己复盘也能加深记忆。利己利人、所谓双赢。 面试官说一说synchronized的底层实现原理 参考答案 一、synchronized作用在代码块时它的底层是通过monitorenter、monitorexit指令来实现的。 monitorenter 每个对象都是一个监视器锁monitor当monitor被占用时就会处于锁定状态线程执行monitorenter指令时尝试获取monitor的所有权过程如下 如果monitor的进入数为0则该线程进入monitor然后将进入数设置为1该线程即为monitor的所有者。如果线程已经占有该monitor只是重新进入则进入monitor的进入数加1。如果其他线程已经占用了monitor则该线程进入阻塞状态直到monitor的进入数为0再重新尝试获取monitor的所有权。 monitorexit 执行monitorexit的线程必须是objectref所对应的monitor持有者。指令执行时monitor的进入数减1如果减1后进入数为0那线程退出monitor不再是这个monitor的所有者。其他被这个monitor阻塞的线程可以尝试去获取这个monitor的所有权。 monitorexit指令出现了两次第1次为同步正常退出释放锁第2次为发生异步退出释放锁。 二、方法的同步并没有通过 monitorenter 和 monitorexit 指令来完成不过相对于普通方法其常量池中多了 ACC_SYNCHRONIZED 标示符。JVM就是根据该标示符来实现方法的同步的 当方法调用时调用指令将会检查方法的 ACC_SYNCHRONIZED 访问标志是否被设置如果设置了执行线程将先获取monitor获取成功之后才能执行方法体方法执行完后再释放monitor。在方法执行期间其他任何线程都无法再获得同一个monitor对象。 三、总结 两种同步方式本质上没有区别只是方法的同步是一种隐式的方式来实现无需通过字节码来完成。两个指令的执行是JVM通过调用操作系统的互斥原语mutex来实现被阻塞的线程会被挂起、等待重新调度会导致“用户态和内核态”两个态之间来回切换对性能有较大影响。
http://www.sadfv.cn/news/210526/

相关文章:

  • 湖南做网站 磐石网络引领网站的二次开发是什么意思
  • 桂林建设网站公司网页传奇网址
  • 夸克作文网站贵州seo推广
  • 货代一般都去哪个网站找客户中小企业网站建设流程
  • 小说阅读网站开发如何建设网站和app
  • 广州做网站开发广州市律师网站建设怎么样
  • 南京哪些公司做网站wordpress 菜单 锚点
  • 为什么要进行网站建设商丘做网站用什么程序比较好
  • 软件开发项目管理制度百度seo权重
  • 互联网大赛建设网站策划书欢迎进入18入口1
  • 做教育网站成都建好的网站出租
  • 石家庄网站设计公司的别名是成都网站建设:
  • 培训网站建设课程网站的排版设计
  • 晒豆网站建设建设部网站如何下载文件
  • 医院建设网站温州市网站建设
  • 手机网站设计软件网站建设+设计那种连接线厂家
  • 深圳做外贸网站公司建e网室内设计网官网榻榻米衣柜官方
  • 东莞手机网站模板网站没有做适配 怎么办
  • 做企业网站备案都需要什么资料wordpress个人工作室主题
  • 学校网站建设的目的马格南摄影网站
  • 宝塔怎么做两个网站的解析公众号开发价格多少
  • 教育视频网站开发wordpress 任务
  • 国外做外汇网站交流淄博找能做网站的公司
  • 吴江网站建设哪家好360建筑网 官方网站
  • 做网站业务好干吗国外视觉差网站
  • 在家建设一个网站需要什么手续网站后面的官网是如何做的
  • 咖啡网站建设策划书做网站后台维护的岗位叫什么
  • 自己如何在网上做网站济南网站优化公司排名
  • 正邦做网站吗如何做网站聚合页
  • 网页制作教程教案seo搜索引擎优化就业前景