1 代码

1
2
3
4
5
6
7
8
9
10
11
12
public class HeapThread {
private static final int _8M = 8 * 1024 * 1024;
//vm 参数:-Xmx20m 设置堆内存为20M
public static void main(String[] args) throws InterruptedException {
new Thread(()->{
List<byte[]> list = new ArrayList<>();
list.add(new byte[_8M]);
list.add(new byte[_8M]);
}).start();
Thread.sleep(2000L);
}
}

运行结果:

运行结果

从运行结果可以看出,线程内部的堆内存溢出,并不会导致主线程结束。

写在最后

欢迎大家关注鄙人的公众号【麦田里的守望者zhg】,让我们一起成长,谢谢。
微信公众号