买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种内存共享方法和相关装置_腾讯科技(深圳)有限公司_202310831321.5 

申请/专利权人:腾讯科技(深圳)有限公司

申请日:2023-07-07

公开(公告)日:2024-03-22

公开(公告)号:CN116560878B

主分类号:G06F9/54

分类号:G06F9/54;G06F9/50

优先权:

专利状态码:有效-授权

法律状态:2024.03.22#授权;2023.08.25#实质审查的生效;2023.08.08#公开

摘要:本申请公开了一种内存共享方法和相关装置,在基于第一编程语言的运行环境中,可以通过编程接口加载基于第二编程语言的可执行文件,第二编程语言为相比于第一编程语言更底层的编程语言,通过基于第二编程语言的可执行文件,可以为目标内存标识确定对应的共享内存空间,将运行环境的内存中的待共享数据复制到共享内存空间,由于共享内存空间用于供运行环境中的多个进程访问,因此多个进程可以通过访问共享内存空间中的同一数据从而实现数据的共享,提高进程间数据传输效率,利于提高应用性能。此外,还可以将目标内存标识和共享内存空间的内存区域信息存储到全局变量中,即使可执行文件执行完毕也不会影响多个进程对共享内存空间中的数据的访问。

主权项:1.一种内存共享方法,其特征在于,所述方法包括:在基于第一编程语言的运行环境中,通过编程接口加载基于第二编程语言的可执行文件,所述第二编程语言为相比于所述第一编程语言更底层的编程语言;通过所述可执行文件,为目标内存标识确定对应的共享内存空间,将所述运行环境的内存中的待共享数据复制到所述共享内存空间,将所述目标内存标识和所述共享内存空间的内存区域信息存储到全局变量;所述共享内存空间用于供所述运行环境中的多个进程访问;其中,所述为目标内存标识确定对应的共享内存空间,包括:在存储空间中创建目标内存标识对应的文件,所述文件所在位置作为所述目标内存标识对应的共享内存空间;其中,所述将所述运行环境的内存中的待共享数据复制到所述共享内存空间,包括:若所述待共享数据的数据类型为引用类型,确定所述运行环境的内存中的堆中的待共享数据的字节长度;根据所述字节长度,在所述运行环境中的内存中的栈中为待共享数据分配中间存储空间,并获取所述中间存储空间的字符串指针;将所述待共享数据写入所述中间存储空间;利用所述中间存储空间的字符串指针,确定所述待共享数据在所述中间存储空间中的字节起始地址,所述待共享数据在中间存储空间中的字节起始地址为待共享数据在运行环境的内存中的栈中的字节起始地址;根据所述字节起始地址和所述字节长度,利用所述栈中的字符串指针和共享内存空间中的字符串指针,将所述待共享数据中的各个位依次复制到所述共享内存空间,其中,经过复制的待共享数据在共享内存空间中以二进制的形式存在,根据字节长度分配中间存储空间以适配待共享数据的大小,通过中间存储空间的字符串指针辅助获取字节起始地址以及辅助待共享数据的复制,所述待共享数据根据预设规则定义的。

全文数据:

权利要求:

百度查询: 腾讯科技(深圳)有限公司 一种内存共享方法和相关装置

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。