强通知事件和弱关注事件

最近写点代码,被字段值的NULL和初始值问题,存储问题,以及通知变化搞得焦头烂额,本来觉得很简单的事,几天下来都没搞清楚。

现在主要谈谈我对事件的理解。

public event Action AsmChanged;

这就是一个事件,它存在于一个类A中,当A的某字段值变化时,就会触发该事件。

那么它的生命周期就从A=new A()开始和结束。

问题来了,A在不断变化,因为数据的重写,A在不断地new A(),那么要保证A.xx字段=yy时事件能够捕获,就还需要一个机制来保证每次A=new A()后,AsmChanged被重新实现,感觉这又加大了复杂性,我认为:这是事件的本质特性引发的复杂性,我称之为强通知事件。

后来,如何解决问题呢? 我想到了监视,本来事件也是有监视作用的,但是事件的监视是监视对象自己的操作,就像微博上的大V一样,事件机制意味着大V发现自己有变化后,点击某按钮(事件)来促使操作反应。

而弱关注事件则是用户的自行监视行为,与大V无关,所以我使用了Timer函数来解决这个问题.

 

posted on 2015-08-09 10:50  飞翔蚂蚁  阅读(316)  评论(0编辑  收藏  举报

导航