[发明专利]一种基于Android的Handler防内存泄漏装置及方法在审
申请号: | 201610929424.5 | 申请日: | 2016-10-31 |
公开(公告)号: | CN106598725A | 公开(公告)日: | 2017-04-26 |
发明(设计)人: | 张磊 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/54 |
代理公司: | 湖北武汉永嘉专利代理有限公司42102 | 代理人: | 王丹,许美红 |
地址: | 430073 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 android handler 内存 泄漏 装置 方法 | ||
1.一种基于Android的Handler防内存泄漏装置,其特征在于:它包括:
异步Runnable请求接收模块,用于接收异步任务的Runnable请求;
同步模块,用于采用弱引用方法同步保存所有接收到的异步任务的Runnable请求;
异步请求执行模块,用于执行异步任务的Runnable请求,判断是否有消息要发送;
子线线程执行结束模块,用于在没有消息要发送时,结束子线线程;
消息发送模块,用于在有消息要发送时,发送消息及消息与异步线程的弱引用关系;
消息分发模块,用于存储消息及消息与异步线程的弱引用关系,并按照消息的时间顺序发送给主线程处理。
2.根据权利要求1所述的一种基于Android的Handler防内存泄漏装置,其特征在于:所述的同步模块中包含双向链表,用于存储所述的异步任务的Runnable请求。
3.根据权利要求1或2所述的一种基于Android的Handler防内存泄漏装置,其特征在于:所述的同步模块中还存储有线程的优先级,用于按照优先级移出异步任务的Runnable请求。
4.根据权利要求1或2所述的一种基于Android的Handler防内存泄漏装置,其特征在于:所述的同步模块中包括有锁模块,用于实现同步保存;锁模块包括:
锁获取模块,用于在接收到新的异步任务的Runnable请求时,获取锁的所有权;
操作模块,用于在获取到锁的所有权时对所述的新的异步任务的Runnable请求进行存储或移出操作;
锁释放模块,用于在存储或移出操作完成时,释放锁的所有权。
5.根据权利要求1所述的一种基于Android的Handler防内存泄漏装置,其特征在于:所述的消息包括及时消息和延时消息;
所述的消息分发模块中设有消息队列和定时器;所述的定时器用于定时,当定时器超时后将延时消息发送到消息队列中;所述的及时消息被直接放入消息队列;所述的消息队列用于按照消息进入的先后顺序有序的发送给主线程处理。
6.一种基于Android的Handler防内存泄漏方法,其特征在于:它包括以下步骤:
接收异步任务的Runnable请求;
采用弱引用方法同步保存所有接收到的异步任务的Runnable请求;
执行异步任务的Runnable请求,判断是否有消息要发送;
在没有消息要发送时,结束子线线程;
在有消息要发送时,发送消息及消息与异步线程的弱引用关系;
存储消息及消息与异步线程的弱引用关系,并按照消息的时间顺序发送给主线程处理。
7.根据权利要求1所述的一种基于Android的Handler防内存泄漏方法,其特征在于:采用双向链表的方式存储所述的异步任务的Runnable请求。
8.根据权利要求6或7所述的一种基于Android的Handler防内存泄漏方法,其特征在于:存储所述的异步任务的Runnable请求后,按照优先级移出异步任务的Runnable请求。
9.根据权利要求6或7所述的一种基于Android的Handler防内存泄漏方法,其特征在于:实现同步保存的具体方式为:
在接收到新的异步任务的Runnable请求时,获取锁的所有权;
在获取到锁的所有权时对所述的新的异步任务的Runnable请求进行存储或移出操作;
在存储或移出操作完成时,释放锁的所有权。
10.根据权利要求6所述的一种基于Android的Handler防内存泄漏方法,其特征在于:所述的消息包括及时消息和延时消息;
本方法中设有消息队列和定时器;当定时器超时后将延时消息发送到消息队列中;所述的及时消息被直接放入消息队列;消息队列按照消息进入的先后顺序有序的发送给主线程处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610929424.5/1.html,转载请声明来源钻瓜专利网。