0
点赞
收藏
分享

微信扫一扫

如何减少GC的次数

1.对象不用时最好显示置为NULL

一般情况,为NULL的对象都会被作为垃圾处理,所以将不用的对象置为NULL,有利于GC收集器判断垃圾,从而提高了GC的效率

2.尽量少用System.gc()

此函数建议JVM进行主GC,会增加主GC的频率,增加了间接性停顿的次数。

3.尽量少使用静态变量

静态变量属于全局变量,不会被GC回收,它们会一直占用内存

4.尽量使用StringBuffer,而不使用String来累加字符串。

5.分散对象创建或删除的时间

集中在短时间内大量创建新对象,特别是大对象,会导致突然需要大量内存,JVM在这种情况下只能进行主GC以回收内存,从而增加主GC的频率。

6.尽量少用finaliza函数,它会加大GC的工作量

7.如果有需要使用经常用到的图片,可以使用软引用类型,将图片保存在内存中,而不引起outofmemory。

8.能用基本类型int而不用对象Integer

9.增大-Xmx的值


举报

相关推荐

0 条评论