19得票3回答
测试/验证WeakReference

我想确认一下,设置 WeakReference 的代码不会意外地保持对所引用对象的强引用。(这里是一个示例,说明了如何很容易地意外做到这点。)这是否看起来是检查意外强引用的最佳方法?TestObject testObj = new TestObject(); WeakReference wr ...

11得票3回答
一个符合规范的C#编译器能否优化掉一个本地变量(但未使用),如果它是对象的唯一强引用?

以下是相关资源: 请参阅这些相关资源: .NET垃圾回收器是否对代码进行预测分析? (在Stack Overflow上) WP7: 当GC将局部变量视为垃圾时 (MSDN博客文章) 换句话说: 在局部变量引用的对象超出其作用域之前(例如,因为该变量被赋值但未再次使用)...

42得票3回答
何时在Python中使用弱引用?

有人能解释一下弱引用的用法吗? 官方文档没有很准确地解释,只是说GC可以随时销毁通过弱引用链接的对象。那么拥有随时会消失的对象有什么意义呢?如果在其消失后需要立即使用它怎么办? 你能举一些好的例子来解释一下吗? 谢谢。

11得票1回答
对于 WeakMap 来说,“循环引用”会被视为“不可访问”,不影响垃圾回收。

function f() { const w = new WeakMap(); const o = {}; w.set(o, { v: o }); return w; } const weakMap = f(); 对于给定的代码,只有weakMap项是否被视为可达?因此,...

10得票3回答
安卓:GC不尊重软引用?

看起来,Dalvik的垃圾收集器不尊重SoftReference,并会尽快清除它们,就像WeakReference一样。虽然仍有约3MB的空闲内存,但我看到在LogCat中看到“GC freed bla-bla-bla字节”后,我的SoftReference被清除了。 此外,我在这里看到了M...

15得票2回答
在Mono上出现奇怪的弱引用行为

测试使用WeakReference的代码在Mono 2.11.3(SGen)和稳定的2.10.8版本中失败了。在像这样的简单代码中:object obj = new object(); WeakReference wr = new WeakReference(obj); Assert.IsT...

36得票3回答
Android Asyntask:使用弱引用来避免设备旋转屏幕。

在《Apress Pro Android 4》中,作者说道:当设备旋转时,当前运行活动的上下文将不再有效。一种方法是使用对活动的弱引用,而不是硬引用。但作者只是提出了这个建议,并没有说明如何实现。请有经验的人给我一个示例。

49得票6回答
Swift中的强引用和弱引用

在 Objective C 中,你可以像这样定义一个具有强引用或弱引用的属性:@property(strong)... @property(weak)... 在Swift中如何实现这个?

8得票3回答
弱方法参数语义

有没有办法指定特定的方法参数具有弱语义? 具体来说,这是一段Objective-C示例代码,可以正常工作: - (void)runTest { __block NSObject *object = [NSObject new]; dispatch_async(dis...

7得票1回答