[发明专利]管理全局对象内存的方法、存储介质、电子设备及系统在审
申请号: | 201810403703.7 | 申请日: | 2018-04-28 |
公开(公告)号: | CN110413401A | 公开(公告)日: | 2019-11-05 |
发明(设计)人: | 黄浩;张文明;陈少杰 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 张凯 |
地址: | 430000 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 全局对象 触发 内存 存储函数 分配函数 内存释放函数 存储介质 电子设备 内存地址 调用 程序模块 读取 指针 程序定义 程序结束 存储内存 定义内存 内存管理 实时记录 释放 创建 存储 占用 管理 退出 分配 | ||
1.一种管理全局对象内存的方法,其特征在于,其包括:
定义内存分配函数,在内存分配函数中插入第一触发函数,所述第一触发函数在创建全局对象时触发并调用存储函数,所述存储函数存储内存分配函数为全局对象所分配的内存地址或指针;
创建第二触发函数,所述第二触发函数在程序模块退出时触发并调用内存释放函数,所述内存释放函数读取存储函数存储的内存地址或指针并释放全局对象所占的内存。
2.如权利要求1所述的一种管理全局对象内存的方法,其特征在于:在C++/C#语言下,重新定义new函数,创建全局对象时触发OnObjectCreated函数,所述OnObjectCreated函数在触发后调用存储函数,程序模块退出时触发AtExitManager函数,所述AtExitManager函数在触发后调用内存释放函数。
3.如权利要求2所述的一种管理全局对象内存的方法,其特征在于:使用RegisterCallback函数存储内存分配函数为全局对象所分配的内存地址或指针,使用DeleteAllObject函数释放内存。
4.如权利要求3所述的一种管理全局对象内存的方法,其特征在于:使用C++/C#语言下的SetWindowsHootEx函数重新定义所述内存分配函数。
5.一种存储介质,该存储介质上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1至4任一项所述的方法。
6.一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,其特征在于:所述处理器执行所述计算机程序时实现权利要求1至4任一项所述的方法。
7.一种管理全局对象内存的系统,其特征在于,其包括:
记录模块,所述记录模块用于定义内存分配函数,在内存分配函数中插入第一触发函数,所述第一触发函数在创建全局对象时触发并调用存储函数,所述存储函数存储内存分配函数为全局对象所分配的内存地址或指针;
释放模块,所述释放模块用于创建第二触发函数,所述第二触发函数在程序模块退出时调用内存释放函数,所述内存释放函数读取存储函数存储的内存地址或指针并释放全局对象所占的内存。
8.如权利要求7所述的一种全局对象内存的系统,其特征在于:C++/C#语言下,所述内存分配函数为的new函数,所述第一触发函数为OnObjectCreated函数,,所述OnObjectCreated函数在触发后调用存储函数,所述第二触发函数为AtExitManager函数,所述AtExitManager函数在触发后调用内存释放函数。
9.如权利要求8所述的一种管理全局对象内存的系统,其特征在于:所述存储函数为RegisterCallback函数,所述内存释放函数为DeleteAllObject函数。
10.如权利要求9所述的一种管理全局对象内存的系统,其特征在于:C++/C#语言下,重新定义所述内存分配函数的函数为SetWindowsHootEx函数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810403703.7/1.html,转载请声明来源钻瓜专利网。