http://msdn.microsoft.com/en-us/library/xt0a1s34(v=vs.100).aspx
参数
靶
类型:System.Object
要跟踪的对象或null。
据我所知,这意味着'null'是WeakReference对象的有效参数......
我看到的问题如下:在提取值时,我将检查Target是否为空...如果不是 - 将使用它作为对象。但是如果“null”作为原始目标传递,那么weakReference对象的属性“Target”将不会给我信息:对象已经被垃圾收集,或者它总是为空。
问题:如果“目标”为空,我怎么能理解它,因为原始对象也是空的?
感谢。
答案 0 :(得分:0)
您可能想尝试IsAlive属性。它是一个布尔值,它将告诉您是否已收集指向的对象。
答案 1 :(得分:0)
看起来应该使用特殊对象(表示“没有数据”)而不是“null”(与Can null be inserted into Cache?问题中的答案相同/类似)