关于OutOfMemoryError,下面说法正确的是()?

题目

(多选)关于OutOfMemoryError,下面说法正确的是()?

A. java.lang.OutOfMemoryError: PermGen space 增加-XX:MaxPermSize这个参数的值的话,这个问题通常会得到解决。
B. java.lang.OutOfMemoryError: Requested array size exceeds VM limit当你正准备创建一个超过虚拟机允许的大小的数组时,这条错误将会出现
C. java.lang.OutOfMemoryError: Java heap space 一般情况下解决这个问题最快的方法就是通过-Xmx参数来增加堆的大小
D. java.lang.OutOfMemoryError: nativeGetNewTLA这个异常只有在jRockit虚拟机时才会碰到

答案

A B C

解析

A:java.lang.OutOfMemoryError: PermGen space 属于运行时常量池溢出,设置-XX:MaxPermSize可以解决。
B:java.lang.OutOfMemoryError: Requested array size exceeds VM limit 数组过长导致堆内存溢出,加大堆内存或减少数组长度。
C:java.lang.OutOfMemoryError: Java heap space堆内存不足,加大堆内存
D:java.lang.OutOfMemoryError: nativeGetNewTLA指当虚拟机不能分配新的线程本地空间(Thread Local Area)的时候错误信息,此错误是线程申请一个新的TLA时产生的,这个异常一般只会发生在jRockit虚拟机,只有过于绝对。

发布了65 篇原创文章 · 获赞 26 · 访问量 2909

猜你喜欢

转载自blog.csdn.net/weixin_43332735/article/details/104792922
今日推荐