Java 1.8.0_131 + Windows Server 2012 R2。
'-Xmx =9000米'。但Windows任务管理器显示java进程使用超过14 GB的内存。
NMT显示“内部”消耗超过4.5 GB的内存。为什么会这样?我知道为本机内存定义空间不是Java功能。但有没有什么方法可以限制“内部”记忆?
总计:保留= 15782485KB,已提交= 14653869KB - Java堆(保留= 9216000KB,已提交= 9216000KB)(mmap:保留= 9216000KB,已提交= 9216000KB)
- 类(保留= 1277553KB,已提交= 260193KB)(类#37738)(malloc = 11889KB#64612)(mmap:保留= 1265664KB,已提交= 248304KB)
- 线程(保留= 80528KB,已提交= 80528KB)(线程#79)(堆栈:保留= 79872KB,已提交= 79872KB)(malloc = 244KB#398)(arena = 412KB#157)
- 代码(保留= 166388KB,承诺= 55208KB)(malloc = 10356KB#10526)(mmap:保留= 156032KB,承诺= 44852KB)
- GC(保留= 340353KB,已提交= 340277KB)(malloc = 3521KB#1861)(mmap:保留= 336832KB,已提交= 336756KB)
- 编译器(保留= 290KB,承诺= 290KB)(malloc = 160KB#947)(竞技场= 130KB#2)
- 内部(保留= 4513559KB,已提交= 4513559KB)(malloc = 4513495KB#7980353)(mmap:保留= 64KB,已提交= 64KB)
- 符号(保留= 52759KB,已提交= 52759KB)(malloc = 48180KB#563951)(竞技场= 4579KB#1)
- 本机内存跟踪(保留= 134867KB,已提交= 134867KB)(malloc = 108KB#1634)(跟踪开销= 134759KB)
- Arena Chunk(保留= 190KB,承诺= 190KB)(malloc = 190KB)