java内存溢出(java内存溢出异常)

素颜马尾好姑娘i 2023-09-25 08:34 183阅读 0赞

内存溢出要怎么办呢?

但是系统管理员总要比攻击者慢一步,如果这个有问题的软件是可选的,甚至是临时的,把它从你的系统中删除

java内存溢出(java内存溢出异常)\_java内存溢出(java内存溢出异常)

Java内存溢出的详细解决方案是什么?

五、不健壮代码的特征及解决办法

1、尽早释放无用对象的引用。好的办法是使用临时变量的时候,让引用变量在退出活动域后,自动设置为null,暗示垃圾收集器来收集该对象,防止发生内存泄露。

对于仍然有指针指向的实例,jvm就不会回收该资源,因为垃圾回收会将值为null的对象作为垃圾,提高GC回收机制效率;

2、我们的程序里不可避免大量使用字符串处理,避免使用String,应大量使用StringBuffer,每一个String对象都得独立占用内存一块区域;

String str = “aaa”;

String str2 = “bbb”;

String str3 = str + str2;//假如执行此次之后str ,str2以后再不被调用,那它就会被放在内存中等待Java的gc去回收,程序内过多的出现这样的情况就会报上面的那个错误,建议在使用字符串时能使用StringBuffer就不要用String,这样可以省不少开销;

3、尽量少用静态变量,因为静态变量是全局的,GC不会回收的;

4、避免集中创建对象尤其是大对象,JVM会突然需要大量内存,这时必然会触发GC优化系统内存环境;显示的声明数组空间,而且申请数量还极大。

搜狗问问-搜狗旗下最大互动问答社区

java内存溢出(java内存溢出异常)\_java内存溢出(java内存溢出异常)\_02

搜狗问问-搜狗旗下最大互动问答社区

发表评论

表情:
评论列表 (有 0 条评论,183人围观)

还没有评论,来说两句吧...

相关阅读

    相关 JAVA内存溢出异常

            在HotSpot虚拟机中,运行时数据区分为程序计数器,虚拟机栈,本地方法栈,java堆,方法区,除了程序计数器不会存在内存溢出的情况,别的区域都有可能发生内存溢