摘要: 订阅者其实有两种来影响发布者: 1.异常(上节已讲) 2.超时 所谓超时指方法的执行时间超过了指定值. 它和异常的区别在与:   异常会影响事件的正常触发和程序的正常运行,而超时不会,它仅仅使事件触发后需要很长的时间才能结束,在依次执行订阅者的方法这段时间内,客户端程序会被中断什么都不做。因为当执行订阅者方法时,当前线程会转向执行方法的代码,调用方法的客户端会被中断,只有当方法执行完毕并返回控制权... 阅读全文
posted @ 2009-11-12 14:56 心在天 阅读(662) 评论(0) 推荐(1) 编辑
摘要: 在上节中程序Program1中,我们发现触发事件时,订阅者发生了“值覆盖”的现象。那么有没有方法可以返回多个返回值呢?答案时肯定的。委托的定义在编译时会生成一个继承自MulticastDelegate的类,而这个MulticastDelegate又继承自Delegate,在Delegate内部,维护类一个委托链表,链表上的每个元素,为一个只包含一个目标方法的委托对象。而通过... 阅读全文
posted @ 2009-11-12 10:07 心在天 阅读(2862) 评论(2) 推荐(0) 编辑