Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java 7u55上的代码运行速度比以前的版本慢得多?_Java_Performance - Fatal编程技术网

java 7u55上的代码运行速度比以前的版本慢得多?

java 7u55上的代码运行速度比以前的版本慢得多?,java,performance,Java,Performance,我有一个从jar文件运行的java应用程序。我有一个用户将他的mac升级到java 7u55,他说该应用程序现在运行速度比以前慢了很多。我不知道他以前安装过哪个版本的Java。我相信jar文件是使用7u51 JDK生成的。你知道为什么会这样吗?使用较新的Java版本重新编译应用程序是否有帮助?重新编译不太可能产生任何影响。javacbytecode编译器进行了最小的优化,从一个次要版本到下一个版本的更改是非常不可能的。聪明的优化工作都是由JIT编译器完成的。。。这是用户正在运行的JRE的一部分

我有一个从jar文件运行的java应用程序。我有一个用户将他的mac升级到java 7u55,他说该应用程序现在运行速度比以前慢了很多。我不知道他以前安装过哪个版本的Java。我相信jar文件是使用7u51 JDK生成的。你知道为什么会这样吗?使用较新的Java版本重新编译应用程序是否有帮助?

重新编译不太可能产生任何影响。
javac
bytecode编译器进行了最小的优化,从一个次要版本到下一个版本的更改是非常不可能的。聪明的优化工作都是由JIT编译器完成的。。。这是用户正在运行的JRE的一部分


总的来说,不可能说出是什么导致了这种减速:

  • 它可能是JVM

  • 它可能是应用程序中的某些内容

  • 这可能是因为用户现在正在使用您的应用程序处理更大的或质量不同的问题

  • 它可能是“外部的”;e、 g.用户已在不同的文件系统上重新安装了您的软件,或者(可能是无意中)在其Mac上运行了更多内容,从而导致额外的资源争用

  • 它可能在用户的想象中。(是……)


那你能做什么呢

首先,我认为您需要重现用户当前的设置,运行他的问题,并查看您的应用程序是否对您和他执行相同的操作。如果没有,那么您需要访问用户的机器,以找出它有什么问题

其次,尝试在用户设置/问题的上下文中分析应用程序。。。在你复制系统的时候


如果你没有合适的硬件,你会被卡住。。。但至少你有理由不能进一步帮助用户。

你能在电脑上重现他们的问题吗?这将是一个很好的第一步,然后你可以对其进行分析。正如在回复@Stephen-C时提到的,我无法访问相同的硬件,这使得分析具有挑战性。而且分析根本不是我的专业领域。我很希望有人会说7u55存在一些特定的已知问题,最好是已知的修复,但我想这是希望太多了!:我没有Mac电脑,这使得复制这台电脑更具挑战性。我也不是在同一地点的用户,但在数百英里以外,所以坐在他的电脑也不是一个选项。我还没有在我的电脑上试用过7u55,但我猜这不会重现这个问题。我知道他并没有用它来解决不同的问题,我相当肯定这不仅仅是他的想象。我的怀疑是“外部的东西”,尽管这将很难追踪或证明。@PurpleVermont-是的,除非有人能为你提供硬件来试图重现用户的问题,否则你几乎无法进行调查。@PurpleVermont:IMHO没有Mac电脑你重现问题的机会是相当大的;我想试试。考虑一下像Teavviver这样的东西,它不在乎几百英里。“马拉蒂努斯-我怀疑机会。但我同意你的看法,值得一试。