1) 由于堆是线程共享的,所以在堆上分配内存需要加锁,效率并不高,为了解决这个问题:sun的Hotspot JVM为所创建线程都分配了一块独立的空间TLAB(Thread Local Allocation Buffer),其大小由JVM根据运行的情况所得。
2) TLAB 仅作用于新生待的Eden space,因此在编写java程序时,多个小对象比大对象更加高效。
java TLAB分析
最新推荐文章于 2024-01-09 17:29:00 发布
1) 由于堆是线程共享的,所以在堆上分配内存需要加锁,效率并不高,为了解决这个问题:sun的Hotspot JVM为所创建线程都分配了一块独立的空间TLAB(Thread Local Allocation Buffer),其大小由JVM根据运行的情况所得。
2) TLAB 仅作用于新生待的Eden space,因此在编写java程序时,多个小对象比大对象更加高效。