G1 CG:长期清理时间

问题描述 投票:0回答:1

G1的垃圾收集器比默认的要好得多,但其清理时间过长,26分钟3小时的运行后清理:

SUCCESS
Elapsed time: 186m21.5s
all done, exiting...
[GC concurrent-mark-end, 1626.1982305 secs]
[GC remark, 12.3848395 secs]
[GC cleanup 14G->14G(16G), 1.6514012 secs]

该方案是关于与RAM 16G 4核处理器上运行,它仅使用一个线程(主)。一个核心总是很忙,大概与OS(Ubuntu Linux操作系统,值得信赖的);当程序运行时,系统监视器显示了其他3芯的少于100%的负载。

该程序从一个bash shell启动。没有任何其他的软件与程序并行运行。

有没有办法减少程序终止后所花费的时间的方法吗?

java performance garbage-collection jvm
1个回答
0
投票

它得到了更好的后添加以下代码终止处理:

String command = "kill -9 "
                 + new File("/proc/self").getCanonicalFile().getName();
Runtime.getRuntime().exec(command);
© www.soinside.com 2019 - 2024. All rights reserved.