[发明专利]基于事件总线的模块间消息传递机制在审
申请号: | 201410551054.7 | 申请日: | 2014-10-16 |
公开(公告)号: | CN104360904A | 公开(公告)日: | 2015-02-18 |
发明(设计)人: | 龚翔;程超;李奇;罗永江;陈锡林 | 申请(专利权)人: | 四川长虹电器股份有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 成都虹桥专利事务所(普通合伙) 51124 | 代理人: | 李凌峰 |
地址: | 621000 四*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 事件 总线 模块 消息 传递 机制 | ||
1.基于事件总线的模块间消息传递机制,其特征在于,包括如下步骤:
A.在订阅者类中实现各种事件的订阅函数并进行标注,订阅者向事件总线注册事件;
B.事件总线进行事件注册后,通过反射机制找出注册对象中被标注的订阅函数,生成订阅者对象;
C.以订阅事件为key,用map来维护订阅者信息,所述订阅者信息包括订阅者对象、回调事件函数及事件类型;
D.通过反射机制分析订阅者对象,根据回调事件函数回调的Method名字确定事件执行方式并遍历map进行事件分发。
2.如权利要求1所述的基于事件总线的模块间消息传递机制,其特征在于,步骤D中事件执行方式包括:
PostThread:直接调用订阅对象的回调函数;
MainThread:UI线程的Handler,PendingPostQueue来维护一个事件列表,SendMessage方式发送消息到UI Looper,设定超时机制,如果事件处理超时,会将后续的事件重新发送一次,防止阻塞UI线程;
Async:实现Runnable接口,维护一个PendingPostQueue事件队列,执行在事件总线创建的线程池中;
BackgroundThread:判断当前线程是否是主线程,如果是,执行方式与PostThread一致,如果当前线程不是主线程,则维护一个PendPostQueue事件队列,并执行在事件总线创建的线程池中。
3.如权利要求1所述的基于事件总线的模块间消息传递机制,其特征在于,步骤A中以Subscribe标注订阅函数。
4.如权利要求1所述的基于事件总线的模块间消息传递机制,其特征在于,所述反射机制为java反射机制。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川长虹电器股份有限公司,未经四川长虹电器股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410551054.7/1.html,转载请声明来源钻瓜专利网。