zoukankan      html  css  js  c++  java
  • JRuby 1.7.0 发布:默认使用Rudy1.9 模式,并可使用InvokeDynamic

    JRuby 1.7最显著的变化就是使用Ruby1.9.3作为默认运行模式,当然它仍然支持1.8.7. 从以下发布说明上看,尽管JRuby 1.7修复了很多与1.9不兼容的问题,但仍未完全支持Ruby 1.9的 所有特性。

    “虽然JRuby 1.7对1.9的某些特性还不支持,比如Ripper,但已经可以稳定地在1.9模式中运行产品应用程序了。在可预见的未来,我们会每隔2到3周发布一个1.7.x补丁包,这些补丁将会解决用户向我们报告的问题以及那些尚未完成的1.9的库。”

    JRuby 1.7不再继续支持Java 5,同时Rubygems和Rake的相应版本也更新到1.8.24 和0.9.2.2。

    JRuby1.7能使用Java 7 的invokedynamic功能,但和第一个预览版不同,此功能现在默认为关闭状态。详细原因可见JRuby wiki

    “OpenJDK7的现有版本有时会发生错误或者无法优化代码。为了提供一致的JRuby体验,在Java 7中将默认关闭invokedynamic功能。

    对于那些没有出现运行错误或者性能降低的应用,我们推荐开启invokedynamic功能以获得最大性能。可以通过强制传递以下参数 “Xcompile.invokedynamic=true”给JRuby(或者添加到JRUBY_OPTS里),或者在Java虚拟机层面设置 “jruby.compile.invokedynamic=true” 参数来开启invokedynamic功能。”

    Java 8 builds 的Java虚拟机中invokedynamic功能默认是开启的。

    您是否已经尝试过在JRuby1.7中开启invokedynamic功能? 您的应用的性能有了多少提升?

  • 相关阅读:
    数据结构与算法的思维导图
    第九周知识总结
    第八周知识总结
    作业七:问卷调查

    图的基本概念及基本术语
    二叉树

    队列

  • 原文地址:https://www.cnblogs.com/shihao/p/2747709.html
Copyright © 2011-2022 走看看