![]() |
1
2
它只用于堆对象。堆栈完全用于保证较短生命周期的对象(即,它们不会超过创建它们的函数)。对于这些对象,垃圾收集是不必要的。
|
![]() |
2
1
堆栈中根本并没有任何“解除分配”。所以,是的,垃圾收集器不参与这个过程。一旦你们不需要它,你们放入堆栈的所有东西都会被程序忘记。应用程序通常只是从堆栈指针中减去对象的大小(以字节为单位),这相当于清理上次放置的所有内容。 |
![]() |
3
1
java中的垃圾收集器只声明堆中的对象,但它会跟踪堆栈内存,以查看在声明堆对象之前是否仍在引用任何堆对象。一旦方法调用结束,堆栈内存即被声明。 |
![]() |
4
-1
|
![]() |
codeforester · 测量GC暂停时间的最佳方法是什么? 6 年前 |
![]() |
Venki WAR · 需要解释G1的并行完整GC 6 年前 |
![]() |
Stephan_Berlin · 为什么CMS系列中的初始标记阶段 6 年前 |
![]() |
Bonsaisteak · 为什么年轻一代需要三个区域来收集垃圾? 6 年前 |
![]() |
goks · 如何清除熊猫的数据帧内存? 7 年前 |