क्या इन दो कार्यान्वयनों के बीच कोई अंतर है?दो निपटान कार्यान्वयन के बीच अंतर?
1:
public class SMSManager : ManagerBase
{
private EventHandler<SheetButtonClickEventArgs> _buttonClickevent;
public SMSManager(DataBlock smsDataBlock, DataBlock telephonesDataBlock) :
base(smsDataBlock)
{
_buttonClickevent = new EventHandler<SheetButtonClickEventArgs>(OnButtonClick);
SheetEvents.ButtonClick += _buttonClickevent;
}
public override void Dispose()
{
base.Dispose();
if (_buttonClickevent != null)
SheetEvents.ButtonClick -= _buttonClickevent;
}
}
2:
public class SMSManager : ManagerBase
{
public SMSManager(DataBlock smsDataBlock, DataBlock telephonesDataBlock) :
base(smsDataBlock)
{
SheetEvents.ButtonClick += new EventHandler<SheetButtonClickEventArgs>(OnButtonClick);
}
public override void Dispose()
{
base.Dispose();
SheetEvents.ButtonClick -= new EventHandler<SheetButtonClickEventArgs>(OnButtonClick);
}
}
पहले एक मेमोरी लीक करने के संबंध में दूसरे की तुलना में अधिक सही हो रहा है। लेकिन क्या यह वास्तव में सही है?
मत भूलना जवाब के रूप में एक जवाब को चिह्नित करने के लिए, यह इस साइट पर सामग्री को बेहतर बनाने के लिए मदद करता है। –