Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.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 jvisualvm:卡在“上;正在加载堆转储…”;屏幕_Java_Profiling_Visualvm_Jvisualvm_Hprof - Fatal编程技术网

Java jvisualvm:卡在“上;正在加载堆转储…”;屏幕

Java jvisualvm:卡在“上;正在加载堆转储…”;屏幕,java,profiling,visualvm,jvisualvm,hprof,Java,Profiling,Visualvm,Jvisualvm,Hprof,我使用的是jdk64,我的java版本是“1.6.0_24”。我的tomcat使用-Xmx7196m运行,而jvisualvm使用-J-Xms2048m-J-Xmx3072m运行。 我对TomcatJava进程进行了堆转储,我的.hprof文件的大小大约为5.5GB。当我试图打开这个堆转储时,它只是停留在加载堆转储…屏幕上 当VisualVM试图打开堆转储时,我还查看了它的堆消耗情况,但这大约只有500MB 注意:我确实看了这个问题,但它是不同的,没有回答我的问题。您可以尝试以下几种方法: 与J

我使用的是jdk64,我的java版本是“1.6.0_24”。我的tomcat使用-Xmx7196m运行,而jvisualvm使用-J-Xms2048m-J-Xmx3072m运行。 我对TomcatJava进程进行了堆转储,我的
.hprof
文件的大小大约为5.5GB。当我试图打开这个堆转储时,它只是停留在
加载堆转储…
屏幕上

当VisualVM试图打开堆转储时,我还查看了它的堆消耗情况,但这大约只有500MB


注意:我确实看了这个问题,但它是不同的,没有回答我的问题。

您可以尝试以下几种方法:

  • 与JDK 1.6.024捆绑在一起的Java VisualVM已经有好几年的历史了。尝试使用来自的最新版本
  • VisualVM使用内存映射文件,因此不需要使用3G堆启动它。我将从1G堆开始。当您尝试打开堆转储时,操作系统有多少可用内存
  • VisualVM的右角应该有进度条,它将显示堆的加载进度。这应该给你一个线索,它可以花多长时间

  • 这些症状也发生在我试图加载一个大的堆转储,并且在Mac上运行的磁盘空间很低(我假设是供visual vm临时文件使用)时。释放磁盘空间后,我加载了文件。

    我遇到了类似的问题,但意识到出现了异常;很难发现:


    我不知道它是否总是显示这样的错误(我使用的是v1.3.9)。

    我还注意到,如果
    jvisualvm
    没有读取文件的权限,那么就没有任何反馈表明问题。(Java 7)

    如果打开的文件不被视为有效的堆转储,则JvisualVM也将卡在此屏幕上

    在MAT(来自Eclipse)上打开相同(无效)文件时,会发生以下错误:

    打开堆转储“heap.hprof”时出错。有关详细信息,请查看错误日志

    不是HPROF堆转储(java.io.IOException)

    不是HPROF堆转储


    那是一个相当大的文件。您等待它加载转储的时间有多长,在这段时间内是否有任何驱动器/CPU活动?我等待了将近20分钟或更长时间。CPU活动非常少。还要检查是否可以实际打开hprof文件。从服务器复制到笔记本电脑后,我的权限出现问题。Visualvm错误处理非常糟糕,它从不告诉任何事情。该链接已断开,有其他选择吗?修复了我的问题,在java 8上的Visualvm 1.4.4上感谢我
    jhat
    给出了正确的错误