[发明专利]跨进程传递字符串的方法及装置在审
申请号: | 201210051294.1 | 申请日: | 2012-03-01 |
公开(公告)号: | CN103294560A | 公开(公告)日: | 2013-09-11 |
发明(设计)人: | 朱政义 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F12/02 |
代理公司: | 北京派特恩知识产权代理事务所(普通合伙) 11270 | 代理人: | 张颖玲;任媛 |
地址: | 518028 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 跨进 传递 字符串 方法 装置 | ||
1.一种跨进程传递字符串的方法,其特征在于,包括:
发送进程将已获得的共享内存空间分为多段;
发送进程将向接收进程传递的字符串写入所述共享内存的未分配使用的分段空间内,使所述接收进程从所述共享内存中已写入所述字符串的各段空间内读取获得所述字符串。
2.如权利要求1所述的方法,其特征在于,所述发送进程将已获得的共享内存空间分为多段包括:
根据向接收进程所传递的字符串的大小,将已获得的共享内存空间分为多段,其中至少一段共享内存空间与传递的字符串的大小相匹配。
3.如权利要求1或2所述的方法,其特征在于,所述分为多段的共享内存空间均设置字符串类型标志、长度和边界。
4.如权利要求1或4所述的方法,其特征在于,所述发送进程将向接收进程传递的字符串写入所述共享内存的未分配使用的分段空间内包括:
发送进程向接收进程传递的字符串为一个,则将所述字符串写入所述共享内存的未分配使用的一段空间内;
或者,发送进程向接收进程传递的字符串为多个,则分别将每个字符串写入所述共享内存的未分配使用的不同段空间内。
5.如权利要求1或4所述的方法,其特征在于,所述发送进程将向接收进程传递的字符串写入所述共享内存的未分配使用的分段空间内后,还包括:
发送进程向所述接收进程发送通知所述接收进程已完成字符串写入的通知消息。
6.如权利要求5所述的方法,其特征在于,所述发送进程向所述接收进程发送通知消息包括:
发送进程调用操作系统的同步阻塞函数,通过同步阻塞函数向所述接收进程发送通知所述接收进程已完成字符串写入的所述通知消息。
7.如权利要求1所述的方法,其特征在于,所述接收进程从所述共享内存中已写入所述字符串的一段空间内读取获得所述字符串包括:
接收进程直接从所述共享内存中已写入所述字符串的一段空间内读取获得所述字符串。
8.如权利要求1所述的方法,其特征在于,所述接收进程从所述共享内存中已写入所述字符串的一段空间内读取获得所述字符串包括:
接收进程通过其子线程从所述共享内存中已写入所述字符串的一段空间内读取获得所述字符串;
从所述子线程中接收得到该子线程已读取的所述字符串。
9.如权利要求8所述的方法,其特征在于,所述接收进程通过其子线程从所述共享内存中已写入所述字符串的一段空间内读取获得所述字符串包括:
接收进程在准备读取写入字符串的一段共享内存时,发出异步事件;
通过异步事件中的子线程从所述共享内存中已写入所述字符串的一段空间内读取获得所述字符串。
10.一种跨进程传递字符串的装置,其特征在于,包括:
划分处理模块和写入处理模块;其中,
所述划分处理模块,用于将已获得的共享内存空间分为多段;
所述写入处理模块,用于将向接收进程传递的字符串写入所述共享内存的未分配使用的分段空间内,使所述接收进程从所述共享内存中已写入所述字符串的各段空间内读取获得所述字符串。
11.根据权利要求10所述的跨进程传递字符串的装置,其特征在于,还包括:通知消息发送模块,用于在所述写入处理模块将所传递字符串向所述共享内存的一段空间内写入后,向所述接收进程发送通知所述接收进程已完成字符串写入的通知消息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210051294.1/1.html,转载请声明来源钻瓜专利网。