ThreadLocal出現OOM內存溢出的場景和原理分析

一、案例代碼 1、首先看一下代碼,模擬了一個線程數爲500的線程池,所有線程共享一個ThreadLocal變量,每一個線程執行的時候插入一個大的List集合: 2、設置JVM參數設置最大內存爲256M,以便模擬出OOM: 3、運行代碼,輸出結果: 可以看出,單線程池執行到第212的時候,就報了錯誤,出現OOM內存溢出錯誤。 4、在運行代碼的時候,同時打開JDK工具jConsole 監控內存變化:
相關文章
相關標籤/搜索