什么时候使用弱引用?

时间:2011-05-20 15:58:31

标签: c# weak-references

  

可能重复:
  When should weak references be used?

您好,

什么时候使用弱引用是好的做法?

有人可以提供一个例子吗?

3 个答案:

答案 0 :(得分:1)

可以使用它们的示例是implementing a caching container

答案 1 :(得分:1)

CAB(及其开放源代码,bbv.Common.EventBroker)使用弱引用来允许表单(或其MVC控制器)之间的松散耦合事件订阅。

例如,这允许表单-A订阅表单B上的事件,但是如果表单-A首先被关闭,它仍然允许表单A被垃圾收集。通常情况下,如果关闭了form-A,它仍会在内存中徘徊,因为它订阅了一个事件意味着它仍然存在对它的引用。

真的,我认为大多数或所有事件都应该是弱引用。

答案 2 :(得分:0)

MSDN description提供了相当丰富的信息,并包含一个假设的例子。