2
我看到一個Java應用程序,如果沒有用戶輸入,閒置空閒時,堆大小將緩慢下降,而已使用堆保持「恆定」。隨着時間的推移,堆空間越來越小的意義空閒的應用程序
我不確定這是什麼意思,爲什麼會發生?
我的猜測是,這是一個JVM的優化,使堆較小,如果應用程序沒有使用它,因爲當應用程序接收用戶輸入的堆大小將再次增長(用於堆上升)
我看到一個Java應用程序,如果沒有用戶輸入,閒置空閒時,堆大小將緩慢下降,而已使用堆保持「恆定」。隨着時間的推移,堆空間越來越小的意義空閒的應用程序
我不確定這是什麼意思,爲什麼會發生?
我的猜測是,這是一個JVM的優化,使堆較小,如果應用程序沒有使用它,因爲當應用程序接收用戶輸入的堆大小將再次增長(用於堆上升)
堆的大小將根據垃圾的產生量而增長和縮小。它不會將內存釋放回操作系統。這只是通過減少訪問的內存量來提高效率。
你用什麼來衡量堆的大小? –
我正在使用visualVM並觀看圖形。 – Blitzkr1eg