关于事件的触发时机
关于事件的“激发”,可以进行以下两种描述,便于从多个角度进行理解,也便于在实际开发中灵活应用。
1:在某种情况下,会引发“某个事件” 或 根据“某种需要”,在代码的“适当位置”“主动” 引发一个事件。
2:在某种动作 或 时机下,会触发“某个事件”。
如下面的例子:调用RaiseRemovingEvent方法,将“主动”引发“BatchAlarmDataRemovedEvent”事件
public event Action<IList<AlarmData>> BatchAlarmDataRemovedEvent;
private void RaiseRemovingEvent(IList<AlarmData> abandonedAlarms)
{
if (abandonedAlarms != null && abandonedAlarms.Count > 0 && !bisInitializing && BatchAlarmDataRemovedEvent != null)
{
BatchAlarmDataRemovedEvent(abandonedAlarms);
}
}
总结:想要引发一个事件,其实并不复杂, 想什么时候引发,就什么时候引发。通常在进行“线程间”交互时,用到事件,可以进行“数据传输”或“完成某一特定功能”。
浙公网安备 33010602011771号