![]() |
1
2
好吧,我记得从终结器访问“类实例变量”不是一个好主意,因为它们可能处于“随机”状态? 这基本上意味着WeakReference终结器将在类终结器之前调用。
http://msdn.microsoft.com/en-us/magazine/bb985010.aspx 如果你确定了你的WeakReference,你可以得到更有意义的结果:
如果让GC知道WeakReference类,则可以得到相同的结果 本身 暂时无法收集,例如:
WeakReference的实际代码:
你可以看到,一旦它的终结器运行完毕,它就会释放句柄,并将其设置为零和零;IsAlive现在将报告错误。但引用本身实际上是活的。 |
![]() |
codeforester · 测量GC暂停时间的最佳方法是什么? 7 年前 |
![]() |
Venki WAR · 需要解释G1的并行完整GC 7 年前 |
![]() |
Stephan_Berlin · 为什么CMS系列中的初始标记阶段 7 年前 |
![]() |
Bonsaisteak · 为什么年轻一代需要三个区域来收集垃圾? 7 年前 |
![]() |
goks · 如何清除熊猫的数据帧内存? 7 年前 |