在实现其最基本的形式INotifyPropertyChanged
接口,大多数人似乎实现它这样的:INotifyProperyChanged - 为什么要额外分配?
public virtual void OnPropertyChanged(string propertyName)
{
var propertyChanged = PropertyChanged;
if (propertyChanged != null)
{
propertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
我的问题是:为什么的var propertyChanged = PropertyChanged;
额外分配?这只是一个偏好问题,还是有充分的理由?当然以下是有效的?
public virtual void OnPropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
http://stackoverflow.com/questions/786383/c-sharp-events-and-thread-safety – 2012-04-03 06:59:53