簡體   English   中英

jvisualvm:卡在“正在加載堆轉儲...”屏幕上

[英]jvisualvm: Stuck on “Loading Heap Dump…” screen

我使用的是 jdk64,我的 java 版本是“1.6.0_24”。 我的 tomcat 使用 -Xmx7196m 運行,而 jvisualvm 使用 -J-Xms2048m -J-Xmx3072m 運行。 我對我的 tomcat java 進程進行了堆轉儲,我的.hprof文件的大小約為 5.5 GB。 當我嘗試打開這個堆轉儲時,它只是停留在Loading Heap Dump...屏幕上。

我還查看了 VisualVM 在嘗試打開堆轉儲時的堆消耗情況,但只有 500MB 左右。

注意:我確實看過jvisualvm: Stuck on “Loading Heap Dump” screen question,但它是不同的,並沒有解決我的問題。

當我在 Mac 上運行時嘗試加載大型堆轉儲並且磁盤空間不足(我假設用於視覺 vm 的臨時文件使用)時,也會出現這些症狀。 在我釋放磁盤空間后,加載了文件。

我遇到了類似的問題,但意識到有一個例外; 很難發現:

在此處輸入圖片說明

我不知道它是否會一直顯示這樣的錯誤(我使用的是 v1.3.9)。

您可以嘗試幾件事:

  1. 與 JDK 1.6.0_24 捆綁在一起的 Java VisualVM 已有數年歷史。 嘗試使用來自https://visualvm.github.io 的最新版本。
  2. VisualVM 使用內存映射文件,因此您無需使用 3G 堆啟動它。 我會從 1G 堆開始。 當您嘗試打開堆轉儲時,您的操作系統有多少可用內存?
  3. VisualVM 的右上角應該有進度條,它會顯示堆加載的進度。 這應該會給你一個線索,它需要多長時間。

我還注意到如果jvisualvm沒有讀取文件的權限,那么沒有反饋表明問題。 (Java 7)

如果打開的文件不被視為有效的堆轉儲,JvisualVM 也將停留在此屏幕上。

在 MAT(來自 Eclipse)上打開相同(無效)的文件,發生錯誤:

打開堆轉儲“heap.hprof”時出錯。 檢查錯誤日志以獲取更多詳細信息。

不是 HPROF 堆轉儲 (java.io.IOException)

不是 HPROF 堆轉儲

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM