Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.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:找出什么在使用所有内存_Java_Eclipse_Memory_Profiling - Fatal编程技术网

Java:找出什么在使用所有内存

Java:找出什么在使用所有内存,java,eclipse,memory,profiling,Java,Eclipse,Memory,Profiling,我有一个java应用程序内存不足,但我不知道是哪个代码在分配内存。是否有我可以检查的应用程序?我使用Eclipse 您需要一个探查器 我在JProfiler方面取得了巨大成功 Yourkit是一个很棒的工具,我曾多次使用它来查找和记录性能问题。带有TPTP框架的Eclipse也可以用来实现这一点。它对远程应用程序服务器也很有效(您需要启用评测代理并在JVM中启用远程调试),但它允许您在几乎任何J2EE环境下运行评测 您需要使用内存分析器。您可以使用Sun或类似的第三方探查器。Eclipse也有分

我有一个java应用程序内存不足,但我不知道是哪个代码在分配内存。是否有我可以检查的应用程序?我使用Eclipse

您需要一个探查器


我在JProfiler方面取得了巨大成功


Yourkit是一个很棒的工具,我曾多次使用它来查找和记录性能问题。带有TPTP框架的Eclipse也可以用来实现这一点。它对远程应用程序服务器也很有效(您需要启用评测代理并在JVM中启用远程调试),但它允许您在几乎任何J2EE环境下运行评测

您需要使用内存分析器。您可以使用Sun或类似的第三方探查器。Eclipse也有分析工具,称为(TPTP)。

既然您使用Eclipse,我推荐使用该插件。这个工具工作得很好,甚至可以提供一些可能的泄漏嫌疑犯的报告。我已经用它查看了超过1G的堆转储,没有任何问题。我只是使用JDK附带的jconsole来获取转储

这里还有一篇关于使用该工具的文章,作者之一


这也是免费的。

我相信每个人都有自己的最爱,但我推荐。

是一款集成了多个命令行JDK工具和轻量级评测功能的可视化工具。它设计用于生产和开发时,进一步增强了JavaSE平台的监控和性能分析能力


它包含在JDK中。

用于快速评测,或者如果您不使用Eclipse或旧版本的jvm,它是一个不错的选择。(我只是加上它作为参考。)

我必须找到前几天导致2.6G堆转储的内存泄漏源。Jhat需要一个难以置信的20G堆大小才能在不崩溃的情况下通过它。Eclipse内存分析器是在10G以下完成的。这就是说,我发现这两个工具都很有用,但我建议首先使用内存分析器,以便更有效地使用内存并更易于使用


我对所使用的内存量感到非常惊讶,但我可以向您保证,如果使用更少的内存,我就不会出现内存错误。

我发现了使用免费评估的内存泄漏(不限5个线程)。它允许以直观、简单的方式跟踪内存分配和堆分析。

+1:很好的工具。。。你知道jvm版本或jvm类型是否有任何限制吗?我不确定我在1.5和1.6中使用过jvm限制。但是,我很难用该工具所依赖的较旧版本的java获得堆转储。hprof的一个重要优点是它具有最小的依赖性:是JDK的一部分,并且没有GUI。因此,在紧要关头,您可以轻松地直接在生产服务器上安装和运行它,即使它没有GUI。用Eclipse试试;-)。有很多免费工具,但是JProfiler非常好。