事件
事件生成于类的声明中,通过使用同一个类或其他类中的委托与事件处理程序关联。包含事件的类用于发布事件,称为发布器类。其他接受该事件的类称为订阅器类。事件使用的是发布-订阅(publisher-subscriber)模型。
发布器是一个定义了事件和委托的对象,此外还定义了事件和委托之间的联系。一个发布器类的对象调用这个事件,同时通知其他的对象。
在类中声明一个事件,首先需要声明该事件对应的委托类型。如:
其次为使用 event 关键字来声明这个事件:
public event BoilerLogHandler BoilerEventLog;
编译执行上述代码,得到如下结果:
Event Fired!
Event Fired!
该示例为一个简单的应用程序,该程序用于热水锅炉系统故障排除。当维修工程师检查锅炉时,锅炉的温度、压力以及工程师所写的备注都会被自动记录到一个日志文件中。
Temperature 100
Pressure 12