【发布时间】:2016-05-27 08:17:50
【问题描述】:
假设我有一个类定义为:
class MyWrapper<T> where T : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
private void OnPropertyChange(String propname)
{
handlePropertyChanged(this, new PropertyChangedEventArgs(propname));
}
private void handlePropertyChanged(object sender, PropertyChangedEventArgs e)
{
var handler = PropertyChanged;
if (handler != null)
{
handler(sender, e);
}
}
private T _backing;
public MyWrapper(T backing)
{
_backing=backing;
_backing.PropertyChanged+=handlePropertyChanged;
}
...Reasons for wrapping the class...
}
此类在支持对象的 PropertyChanged 事件上设置委托。 据我了解,这个委托有一个指向 MyWrapper 实例的指针。这是否意味着 MyWrapper 实例的生命周期不会短于烘焙对象?
如果是这样,有没有办法解决这个问题?
【问题讨论】:
标签: c# garbage-collection