[发明专利]对象回收事件监听方法、装置和计算机可读存储介质在审
申请号: | 201910704570.1 | 申请日: | 2019-07-31 |
公开(公告)号: | CN112306668A | 公开(公告)日: | 2021-02-02 |
发明(设计)人: | 雷丹雄 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 广州华进联合专利商标代理有限公司 44224 | 代理人: | 黄晓庆 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 对象 回收 事件 监听 方法 装置 计算机 可读 存储 介质 | ||
本申请涉及一种对象回收事件监听方法、装置、计算机可读存储介质和计算机设备,通过在监测到发生目标对象的回收事件时,触发产生回收监听对象的回收事件,监听对象为目标对象引用的对象,目标对象与监听对象的生命周期相同;在产生回收监听对象的回收事件时,触发产生绑定对象的销毁事件,监听对象通过引擎与绑定对象绑定;基于绑定对象的销毁事件,确定发生了目标对象的回收事件。通过目标对象引用监听对象,监听对象又与绑定对象绑定,当目标对象发生回收事件时,可以基于绑定对象的销毁事件,无需查询就可以及时的知道目标对象的回收事件。
技术领域
本申请涉及计算机技术领域,特别是涉及一种对象回收事件监听方法、装置、计算机可读存储介质和计算机设备。
背景技术
开发者使用JavaScript语言(一种高级编程语言,通过解释执行,是一门动态类型,面向对象的直译语言)开发程序时,可能会需要及时得知一个对象被垃圾回收的事件,以便于及时进行与该对象相关的资源销毁工作。
在小程序、小游戏平台给开发者提供了更多系统相关资源的调度能力。故而相关资源的及时销毁工作,也显得更加重要了,如audio(音频)相关资源。
对此问题,一般处理手段是:依赖GC(Garbage Collect,指垃圾回收,JavaScript语言的一种特性),使用通用类WeakMap(一种名为WeakMap的类,是一组键/值对的集合)。但依赖应用程序主动定期查询对象被垃圾回收的事件,对查询到的对象相关的资源进行销毁,因此,对应用程序的性能影响较大。
发明内容
基于此,有必要针对对应用程序的性能影响较大的问题,提供一种对象回收事件监听方法、装置、计算机可读存储介质和计算机设备。
一种对象回收事件监听方法,包括:
在监测到发生目标对象的回收事件时,触发产生回收监听对象的回收事件,所述监听对象为所述目标对象引用的对象,所述目标对象与所述监听对象的生命周期相同;
在产生回收所述监听对象的回收事件时,触发产生绑定对象的销毁事件,所述监听对象通过引擎与所述绑定对象绑定;
基于所述绑定对象的销毁事件,确定发生了所述目标对象的回收事件。
一种对象回收事件监听装置,包括:
目标对象检测模块,在监测到发生目标对象的回收事件时,触发产生回收监听对象的回收事件,所述监听对象为所述目标对象引用的对象,所述目标对象与所述监听对象的生命周期相同;
销毁事件触发模块,在产生回收所述监听对象的回收事件时,触发产生绑定对象的销毁事件,所述监听对象通过引擎与所述绑定对象绑定;
回收事件确定模块,基于所述绑定对象的销毁事件,确定发生了所述目标对象的回收事件。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述方法的步骤。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述方法的步骤。
上述对象回收事件监听方法、装置、计算机可读存储介质和计算机设备,通过在监测到发生目标对象的回收事件时,触发产生回收监听对象的回收事件,监听对象为目标对象引用的对象,目标对象与监听对象的生命周期相同;在产生回收监听对象的回收事件时,触发产生绑定对象的销毁事件,监听对象通过引擎与绑定对象绑定;基于绑定对象的销毁事件,确定发生了目标对象的回收事件。通过目标对象引用监听对象,监听对象又与绑定对象绑定,当目标对象发生回收事件时,可以基于绑定对象的销毁事件,无需查询就可以及时的知道目标对象的回收事件。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910704570.1/2.html,转载请声明来源钻瓜专利网。