kbe定时器框架

kbe的定时器框架类图:

kbe的loginapp是靠EventDispatcher对象进行驱动,EventDispatcher通过不断的调用task进行任务处理,还要处理一些超时的行为,上面就是通过定时器对象进行超时处理的定时器框架图。


最开始看kbe的timer时,看到里面的一些类名定义认为很奇葩,然后静下心来研究却发现:人家这样定义是合理的。也不存在面向对象过度分析造成的冗余。


EventDispatcher中保存了一个TimersT对象,这个对象内部有个容器,这个容器用于保存被EventDispatcher轮询的定时器对象Time,而实际的超时操作是通过TimerHandler的实现类完成的,一个实际的Time对应一个处理这个超时的TimerHandler对象。如果实际的TimerHandler对象发现对应的定时器Time被取消或者无效,就通过TimerHandle来把Time和实际的TimerHandler的对应关系斩断,并把Time从TimersT的容器中删除,从而下次不会被EventDispatcher轮询.


仔细思考个人认为:上面的框架思路清晰,没有过度的面向对象分析容易,而且可移植和扩展性较强.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值