ThreadLocal出现OOM内存溢出的场景和原理分析

一、案例代码 1、首先看一下代码,模拟了一个线程数为500的线程池,所有线程共享一个ThreadLocal变量,每一个线程执行的时候插入一个大的List集合: 2、设置JVM参数设置最大内存为256M,以便模拟出OOM: 3、运行代码,输出结果: 可以看出,单线程池执行到第212的时候,就报了错误,出现OOM内存溢出错误。 4、在运行代码的时候,同时打开JDK工具jConsole 监控内存变化:
相关文章
相关标签/搜索