[发明专利]一种通过在单进程中实现多消息队列机制提升性能的方法有效
申请号: | 201210445839.7 | 申请日: | 2012-11-08 |
公开(公告)号: | CN102999386A | 公开(公告)日: | 2013-03-27 |
发明(设计)人: | 张海霞;孙文;袁东风;徐加利;徐祥桐;翟庆羽;孙志猛;王宏宾;纪洪亮;李宗璋 | 申请(专利权)人: | 山东大学 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 济南金迪知识产权代理有限公司 37219 | 代理人: | 许德山 |
地址: | 250100 山*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 通过在单进程中实现多消息队列机制提升性能的方法,属移动终端的操作系统技术领域。本发明主要特点是改变单线程单消息队列的做法,增加单个线程的消息队列,并在多个消息队列间划分优先级,将接收到的响应消息按紧急程度存入不同优先级的消息队列,消息队列按照优先级先后处理,从而实现消息的智能处理。本发明优化了Android系统原有的消息循环机制,可以减少用户操作Android系统的延迟、滞后,提高用户响应的速度,保证系统的运行性能。 | ||
搜索关键词: | 一种 通过 进程 实现 消息 队列 机制 提升 性能 方法 | ||
【主权项】:
一种通过在单进程中实现多消息队列机制提升性能的方法,应用在Android系统中,该系统包括带优先级判断功能的Handler模块和带多消息队列管理功能的Looper模块两部分,Handler模块用于把消息按照紧急程度存入对应优先级的消息队列中,并负责收发消息队列中待处理的消息;Looper模块用于管理多个消息队列的循环和执行;Handler模块包括优先级判断单元和消息收发单元,其中优先级判断单元用于消息优先级的判断,消息收发单元用于把消息传送到消息队列及把待处理的消息传送给执行的子线程;Looper模块包括优先级管理单元和循环执行单元,其中优先级管理单元用于激活有存储消息的高优先级消息队列、封存低优先级的消息队列;循环执行单元用于选定循环执行的消息队列,该方法步骤如下:1)子线程Handler模块接收用户的响应消息由UI主线程的子线程Handler模块的消息收发单元响应用户的操作,然后转换成消息等待发送;2)子线程Handler模块判断消息的优先级在UI主线程的子线程Handler模块的优先级判断单元进行优先级消息的判断,如将优先级设为3个,分为Normal,High,Very High 3个等级,Normal优先级最低,Very High优先级最高;3)子线程Handler模块传送消息至UI主线程由UI主线程的子线程Handler模块的消息收发单元进行,消息在UI主线程对应优先级的消息队列中进行存储待处理;4)UI主线程按优先级管理多消息队列其步骤为:a)Looper模块判断优先级最高的消息队列是否为空,若为空则转到下一步,否则等待,再次判断优先级最高的消息队列是否为空;b)Looper模块判断下一优先级的消息队列是否为空,若为空则等待,再次判断下一优先级的消息队列是否为空,否则转到下一步;c)Looper模块选择此优先级的消息队列,按“先入先出”的原则进行处理;d)Handler模块发送待处理的消息至处理子线程;e)转到步骤a)。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东大学,未经山东大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201210445839.7/,转载请声明来源钻瓜专利网。
- 上一篇:一种金属互连层刻蚀方法
- 下一篇:一种Ⅲ-ⅤOI结构的制备方法