当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:12:00  来源:本站整理

JAVA并发程序筹划近况和发展前景[Java编程]

赞助商链接



  本文“JAVA并发程序筹划近况和发展前景[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

确切到了并发风行的期间了, 我认为最重要的缘由还是多核处理器及其硬件体系的日益成熟, 并且本钱摊薄到大众价钱了.

j.u.c 包主如果为了性能来的, 其计划其实不如Java传统的内置同步机制(synchronized块和办法, 以及 Object.wait(); Object.notify())文雅, 但是传统同步机制的最大弊端就是不辨别同享同步(普通是并发的读操作) 与 互斥同步 (普通是写操作), 全部同步都只能是完好排他的,只要有并发写的大概性就不得不把全部读操作也互斥同步,从而丧失并发读取的大概性. 这跟大大都利用的并发情势(读远多过于写)存在严重偏离, 以至于硬件新增长出来的并发本领在普通利用中将被大部份折扣掉, 这个是不大概被利用软件开辟市场容忍的. 同时传统同步机制也有一些机动性方面的弊端, 比方 Object.wait(); Object.notify(); 必须在该对象的同步块内履行 (不然会抛IllegalMonitorStateException), 并且一个对象只能wait/notify一个状况. j.u.c 类通过让一个Lock可以建多个Condition去wait/notify加强了机动性.

但是抛开性能和机动性不管, 假如传统Java同步机制可以实现的话, 它还是更文雅的, 你永久没法写出加锁今后忘掉解锁的代码, 因为不匹配的 {} 会产生编译错误. 同时已经有相当多的科研力气, 投入到降低传统同步机制在单线程情形下最小化同步开销的研发工作中, 使得目前的JVM履行同步块时, 假如是单线程情形, 效率非常高. 不过作为代价, 多线程情形下却要比公道想像到的性能更低.

Excector、ScheduleExecutorService、Future、BlockingQueue这些其实就是目前构建利用服务器的Building Block, 目前作为尺度类库供应, 有利于发展出更优异的Java框架, 但是主流利用开辟能否也会架构于这些相对基层的工具库之上, 我个人还是抱观望态度.

j.u.c 库确切比本来的 dl.u.c 库性能会高, 因为 dl.u.c 是构建在Java传统同步机制之上的, 而 j.u.c 是将其移植到了最新 JVM 的并发支持特点之上 (通过 sun.misc.Unsafe 与Hotspot VM打交道, 直接产生宿主CPU支持的原子内存拜候指令), 可以认为是从软件实现进级成了硬件实现, 其性能差别不可思议.


  以上是“JAVA并发程序筹划近况和发展前景[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 利用Javascript实现网页水印(非图片水印)
  • Java开辟环境的搭建
  • Ubuntu java安装与配置
  • 办理Ubuntu 10.04 Firefox3.6 Java浏览器插件不工作的问
  • Ubuntu重装后Java环境的设置
  • Sun Java进入Ubuntu 10.10软件中央
  • Ubuntu 10.10配置Java开辟环境
  • 在Ubuntu 10.10中配置Java环境变量的办法
  • Ubuntu下Java环境的搭建
  • Ubuntu 10.04 下安装 Java, JRE
  • Ubuntu 10.04下的搭建SUN JAVA开辟环境
  • Ubuntu 12.04安装java7
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .