多线程环境下,在堆上创建对象很容易造成线程不安全现象。
可能出现线程A正在给对象O1分配内存M,指针还没来得及修改,线程B又同时使用了内存M来给对象O2分配内存的情况。
开启本地线程分配缓冲(Thread Local Allocation Buffer,TLAB),
需要设置虚拟机参数 -XX:UseTLAB
JVM - TLAB(Thread Local Allocation Buffer)本地线程分配缓冲
原文:https://www.cnblogs.com/frankcui/p/14332213.html