面试 JVM 八股文十问十答第八期
相信看了本文后,对你的面试是有一定帮助的!关注专栏后就能收到持续更新!
⭐点赞⭐收藏⭐不迷路!⭐
1) 了解TLAB吗?来谈谈吧
TLAB(Thread-Local Allocation Buffer)是一种Java虚拟机(JVM)内存分配优化技术。它旨在提高多线程应用程序的内存分配性能。
TLAB的基本思想是为每个线程分配一个私有的内存缓冲区。这个缓冲区在线程的堆栈上分配,因此每个线程都可以在自己的TLAB上进行快速的内存分配操作,而无需频繁地竞争全局的堆内存分配锁。这种方式减少了线程间的竞争,提高了内存分配的并发性能。
TLAB的大小通常是根据应用程序的需求和性能特性进行调优的。当线程的TLAB空间用尽时,它会重新申请一个新的TLAB或者尝试从全局的堆内存中分配内存。
TLAB的使用可以减少内存分配时的锁竞争,提高了多线程应用程序的性能和可伸缩性。
2) PLAB 是什么?
PLAB(Parallel Allocation Buffers)是G1垃圾收集器中的一种内存分配优化技术。
在G1垃圾收集器中,每个分区都有一个PLAB。当对象在垃圾收集期间被分配时,它们可以直接在PLAB中进行分配,而无需竞争全局的内存分配锁。这种方式减少了垃圾收集器的停顿时间,提高了吞吐量和并发性能。
PLAB的大小通常是根据应用程序的需求和性能特性进行调优的。它们的大小对于垃圾收集器的性能有很大影响,因此需要根据具体情况进行合理的设置和调整。

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



