簡體   English   中英

JVisualvm:應用程序終止后如何進行堆轉儲?

[英]JVisualvm:How to take heap dump after the application terminated?

我進行了搜索,但是在應用程序終止后找不到任何方法來進行堆轉儲。

在eclipse中,我觸發了使用eclipse插件開發來創建新項目的過程。 在代碼級別,我有兩種創建新項目的方法。 我想比較兩種方法。

我已經使用JVsualVm來分析在創建新項目生成過程中生成的數據。

當我的進程執行結束時,我想獲取正在運行的應用程序的堆轉儲。

但是問題是正在運行的進程停止后,它已從JvisulaVM的應用程序視圖中刪除,我無法對其進行堆轉儲。

因此,有什么辦法可以從JVisualVm中獲取已停止的應用程序的堆轉儲,因為我仍然可以打開正在運行的應用程序的選項卡,但是該應用程序已從應用程序視圖樹中刪除。

您可以在應用程序結束時以編程方式創建它: https : //blogs.oracle.com/sundararajan/entry/programmatically_dumping_heap_from_java

好的,這還不完全是終點,但也許足以滿足您的需求。

那根本不可能。 應用程序終止后,包括堆在內的內存都消失了。

甚至我也嘗試過同樣的方法,從JVisualVM中獲取所創建的MBean的堆詳細信息。

我知道應用程序執行完成后,便無法從中獲取詳細信息。

[編輯]

當然,該選項卡仍保留在它們未激活的JVisualVM中。

暫無
暫無

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

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