0
我在Ubuntu服務器上運行Java程序。我使用命令行參數爲Java堆分配了最大2560 MB的Java堆,並將最大值爲128 MB的Java分配給了Java PermGen。大約一個小時後,我去看看內存使用情況。從Java應用程序內部看,它仍然分配了大約2500 MB的堆,但在Ubuntu中,它看起來像JVM使用的是3500 MB!Java內存處理
這怎麼可能?當然JVM不應該使用堆+ permgen +多一點堆棧和其他一些小東西。
你至少需要幾百個線程來捆綁這麼多的堆棧空間。 – cHao
@cHao如果他在服務器端有幾百個客戶端並且爲每個客戶端分配,就會發生這種情況:讀者+作者+工作者線程 – 2013-05-27 16:45:40
@matheszabi:Eh。人們必須*嘗試*浪費線程才能拿出這樣的設計。但我猜。 – cHao