制造StackOverflowError与OutOfMemoryError
来源:互联网 发布:c语言技术 编辑:程序博客网 时间:2024/05/17 09:03
public class ExampleUnitTest { @Test public void addition_isCorrect() throws Exception { oom();// so(); } ArrayList<String[]> list = new ArrayList<>(); private void oom() { String[] arrays = new String[1000000000]; while (true) { list.add(arrays); } } private void so() { while (true) { so(); } }}
java.lang.OutOfMemoryError: Java heap space at com.zhjy.my2048.ExampleUnitTest.oom(ExampleUnitTest.java:23) at com.zhjy.my2048.ExampleUnitTest.addition_isCorrect(ExampleUnitTest.java:16)
OutOfMemoryErro发生这种问题的原因是java虚拟机创建的对象太多,在进行垃圾回收之间,虚拟机分配的到堆内存空间已经用满了。
public class ExampleUnitTest { @Test public void addition_isCorrect() throws Exception {// oom(); so(); } ArrayList<String[]> list = new ArrayList<>(); private void oom() { String[] arrays = new String[1000000000]; while (true) { list.add(arrays); } } private void so() { while (true) { so(); } }}
java.lang.StackOverflowError at com.zhjy.my2048.ExampleUnitTest.so(ExampleUnitTest.java:32) at com.zhjy.my2048.ExampleUnitTest.so(ExampleUnitTest.java:32) at com.zhjy.my2048.ExampleUnitTest.so(ExampleUnitTest.java:32) at com.zhjy.my2048.ExampleUnitTest.so(ExampleUnitTest.java:32) at com.zhjy.my2048.ExampleUnitTest.so(ExampleUnitTest.java:32)
StackOverflowError是由于当前线程的栈满了 ,也就是函数调用层级过多导致。比如死递归。
阅读全文
0 0
- 制造StackOverflowError与OutOfMemoryError
- 理解StackOverflowError与OutOfMemoryError
- 理解StackOverflowError与OutOfMemoryError
- StackOverflowError与OutOfMemoryError区别
- java stackoverflowerror与outofmemoryerror区别
- java stackoverflowerror与outofmemoryerror区别
- StackOverflowError OutOfMemoryError
- Java中StackOverflowError与OutOfMemoryError详解
- JVM中stackoverflowerror与outofmemoryerror区别
- StackOverflowError栈满--无线递归与OutOfMemoryError内存溢出
- StackOverflowError&OutOfMemoryError区别
- StackOverflowError和OutOfMemoryError区别
- 人为制造 java.lang.StackOverflowError
- StackOverflowError 和 OutOfMemoryError 的区别
- 实战:OutOfMemoryError和StackOverflowError异常
- OutOfMemoryError和StackOverflowError异常demo
- Java的OutOfMemoryError和StackOverflowError
- JVM—内存溢出、OutOfMemoryError、StackOverflowError
- sql server建表时怎么设置ID字段自增
- #学志#[php]验证链接有效性
- PaX学习总结
- mysql 利用@rownum生成自定义排序值
- PullToRefreshListView 自定义介绍
- 制造StackOverflowError与OutOfMemoryError
- [bzoj2144]跳跳棋 LCA
- 希尔排序
- sphinx 4 AbstractDecoder
- provisioning profile doesn't include signing certificate
- JNI开发之基本数据类型转换
- Google APIDemo
- autolayout 约束优先级
- jsoncpp 的学习和简单的使用案例