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

南阳专业网站制作费用2021年11月最新新闻热点事件

南阳专业网站制作费用,2021年11月最新新闻热点事件,小程序自己制作流程,网站首页布局设计教程java 并发计数器我只是买了新玩具#xff0c;而Java 8有很多 。 这次我想谈谈我的最爱之一-并发加法器。 这是一组新的类#xff0c;用于管理由多个线程编写和读取的计数器。 新的API有望显着提高性能#xff0c;同时仍使事情简单明了。 自从多核体系结构问世以来人们一直在… java 并发计数器 我只是买了新玩具而Java 8有很多 。 这次我想谈谈我的最爱之一-并发加法器。 这是一组新的类用于管理由多个线程编写和读取的计数器。 新的API有望显着提高性能同时仍使事情简单明了。 自从多核体系结构问世以来人们一直在管理并发计数器让我们看一看迄今为止Java提供的一些选项以及与新API相比它们的性能。 脏计数器 –这种方法意味着您正在多个线程之间的常规对象或静态字段中进行写入/读取操作。 不幸的是这有两个原因。 首先是在Java中A B操作不是原子操作。 如果打开输出字节码将至少看到四条指令-一个用于将堆中的字段值加载到线程堆栈中第二个用于加载增量第三个用于添加它们第四个用于设置结果进入领域。 如果在同一个内存位置同时有多个线程同时执行此操作则极有可能错过写操作因为一个线程可以覆盖另一个线程的值又称“读取-修改-写入” 。 与此相关的还有另一个讨厌的角度那就是价值的波动性。 下面的更多内容。 这是一个菜鸟错误而且很难调试。 如果您确实遇到了在您的应用程序中执行此操作的任何人我想请您帮个忙。 在数据库中搜索“ Tal Weiss”。 如果您在那里看到我–删除我的记录。 我会更安全的。 同步 -这是最基本的并发习惯用法它在读取或写入值时会阻塞所有其他线程。 当它起作用时这是将代码转换为DMV行的可靠方法。 RWLock –基本Java锁的这种稍微复杂的版本使您可以区分更改了值并需要阻止其他线程的线程与仅读取且不需要关键部分的线程。 尽管这可能更有效假设编写器的数量很低但是这是一个相当不错的方法因为在获取写锁时您将阻止所有其他线程的执行。 易失性 -这个相当容易被误解的关键字实际上指示JIT编译器取消优化运行时机器代码以便其他线程可以立即看到对该字段的任何修改。 这使一些JIT编译器最喜欢的优化工作失去了分配分配到内存的顺序。 再说一次 你听到了 JIT编译器可以更改对字段进行分配的顺序。 这种不可思议的小策略也称为before-before 使它可以最小化程序访问全局堆所需的次数同时仍确保您的代码不受其影响。 偷偷摸摸的… 那么什么时候应该使用易失性计数器 如果只有一个线程在更新一个值而有多个线程在使用它那么这是一个非常好的策略–根本没有争用。 那么为什么不总是问它呢 因为当一个以上的线程正在更新该字段时这不能很好地工作。 由于A B不是原子的因此存在覆盖其他人的写入的风险。 在Java 8之前您需要使用AtomicInteger。 AtomicInteger-这组类使用CAS比较和交换处理器指令来更新计数器的值。 听起来不错不是吗 好吧是的不是。 这很有效因为它利用直接的机器代码指令来设置该值而对其他线程的执行影响最小。 缺点是如果由于与另一个线程的争用而无法设置该值则必须重试。 在竞争激烈的情况下这可能会变成自旋锁其中线程必须不断尝试并在无限循环中设置该值直到成功为止。 这不是我们想要的。 输入带有LongAdders的Java 8。 Java 8 Adders –这是一个非常酷的新API我永不过时 从使用角度来看它与AtomicInteger非常相似。 只需创建一个LongAdder并使用intValue和add即可获取/设置值。 魔术发生在幕后。 此类的作用是当直接CAS由于争用而失败时它将增量存储在为该线程分配的内部单元对象中。 然后在调用intValue时将待处理单元格的值加到总和上。 这减少了返回和CAS或阻止其他线程的需要。 很聪明的东西 这么好说吧-让我们看看这只小狗在行动。 我们建立了以下基准将计数器重置为零并开始使用多个线程读取和递增计数器。 当计数器达到10 ^ 8时停止。 我们在4核i7处理器上运行了基准测试。 我们使用总共十个线程来运行基准测试-五个用于写作五个用于阅读因此我们在这里势必会引起严重的争论 请注意肮脏和易变的风险值都将覆盖。 代码在这里可用 底线 并发加法器洁净室的性能比原子整数提高60-100 。 除了锁定时添加线程没有什么区别。 请注意使用同步锁或RW锁会给您带来巨大的性能损失-慢一个数量级 如果您已经有机会在代码中使用这些类那么我很乐意听到。 补充阅读– Brian Goetz关于Java并发性。 翻译自: https://www.javacodegeeks.com/2014/04/java-8-longadders-the-right-way-to-manage-concurrent-counters.htmljava 并发计数器
http://www.zqtcl.cn/news/718180/

相关文章:

  • 资阳网站网站建设月夜直播免费完整版
  • 自己的网站打不开了网站建设维护成本
  • 最便宜做网站c2c网站建站的标准
  • 家里电脑做网站服务器下载中国移动商旅100最新版本
  • 深圳建站公司开发费用做网站网页的工作怎么样
  • 网站工程师平均工资网站开发合同里的坑
  • 南通公司建站模板品牌网站建设小蝌蚪
  • 网站备案号 有效期微信小程序开发视频完整教程
  • 给公司做网站需要什么信息html制作百度登录页面
  • 济南市建设执业资格注册中心网站小程序源码模板下载
  • 免费做网站怎么做网站网页生成app制作
  • 网站建设中的财务预算广州网站制作
  • 经营范围网站建设wordpress主题去除友情链接
  • ip开源网站FPGA可以做点什么国外购物平台排行榜前十名
  • 温州网站推广优化公司专业做网站建设公司排名
  • 网站广告推广哪家好wordpress漏洞大全
  • 做a小视频免费观看网站视觉传达设计网站
  • 网站建设属于网络还是软件服务器销售网站源码
  • 上海建设工程咨询网 首页郑州seo野狼
  • 建设网站需要注意什么手续禅城网站设计
  • 重庆网站页面优化wordpress fm
  • 淄博网站建设企业做网站原型图
  • 电子商务网站开发视频软件研发过程管理
  • 网站建设实施计划包括wordpress编程视频教程
  • 谈谈你对企业网站的页面设计苏州住房和城乡建设局网站网签
  • 企业建网站服务庆阳网站制作
  • 级a做爰片免费视网站可信赖的南昌网站建设
  • 建立网站需要注意事项做家居用品亚马逊看哪些网站
  • 环影视界免费版wordpress主题优化网站图片
  • 网站开发交付验收文档山西做网站流程步骤