[发明专利]跨进程事件处理方法、装置、电子设备、存储介质及车辆在审
申请号: | 202211018251.3 | 申请日: | 2022-08-24 |
公开(公告)号: | CN115373874A | 公开(公告)日: | 2022-11-22 |
发明(设计)人: | 董雷;林晓东;王柏生 | 申请(专利权)人: | 阿波罗智能技术(北京)有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/52 |
代理公司: | 北京易光知识产权代理有限公司 11596 | 代理人: | 阎敏;王姗姗 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 跨进 事件 处理 方法 装置 电子设备 存储 介质 车辆 | ||
1.一种跨进程事件处理方法,包括:
在需要发送事件通知的情况下,获取进程集合的共享内存的进程锁;所述共享内存中包括第一对象;
在成功获取所述进程锁的情况下,在所述共享内存中建立所述第一对象与进程子集的关联关系;
基于所述共享内存的条件变量信号,唤醒所述进程集合中的处于休眠状态的多个进程,以通知所述处理休眠状态的多个进程中的所述进程子集基于所述第一对象获取所述事件通知的消息内容。
2.根据权利要求1所述的方法,还包括基于以下方法创建所述共享内存:
基于所述共享内存的内存标识确定尚未创建所述共享内存的情况下,调用内存创建接口发送内存创建请求;
接收所述内存创建接口返回的响应信息;
在所述响应信息指示允许创建所述共享内存的情况下,基于所述内存标识创建所述共享内存;
在开始初始化所述共享内存的情况下,将所述共享内存的状态设置为初始化中;
在所述共享内存初始化完成的情况下,将所述共享内存的状态更新为初始化完成。
3.根据权利要求2所述的方法,还包括:
在所述响应信息指示内存创建失败的情况下,每间隔指定时长读取所述共享内存的状态直至所述共享内存的状态更新为初始化完成;
在所述共享内存的状态更新为初始化完成的情况下,将所述共享内存的内存地址映射到进程空间。
4.根据权利要求2或3所述的方法,其中,所述共享内存中包括头标识信息,所述共享内存的状态记录在所述头标识信息中。
5.根据权利要求1-4中任一项所述的方法,其中,所述共享内存中包含第二对象,所述第二对象用于记录连接所述共享内存的进程数,还包括:
在确定停止使用所述共享内存的情况下,将所述第二对象记录的进程数减少预设值;
在减少所述预设值后所述第二对象记录的进程数为指定值的情况下,释放所述共享内存。
6.根据权利要求1-5中任一项所述的方法,还包括:
在需要接收事件通知的情况下,获取所述共享内存的进程锁;
在成功获取所述进程锁的情况下,调用所述共享内存的休眠方法进入休眠状态;
在接收到条件变量信号的情况下,进入唤醒状态;
在唤醒状态下,处理所述事件通知。
7.根据权利要求6所述的方法,其中,所述在唤醒状态下,处理所述事件通知,包括:
在唤醒状态下,获取所述共享内存的进程锁;
读取所述共享内存中的第一对象;
在确定与所述第一对象关联的情况下,释放所述进程锁,并基于所述事件通知获取消息内容;
在确定与所述第一对象不关联的情况下,返回执行所述调用所述共享内存的休眠方法进入休眠状态的操作,并释放所述进程锁。
8.一种跨进程事件处理装置,所述装置包括:
第一获取模块,用于在需要发送事件通知的情况下,获取所述进程集合的共享内存的进程锁;所述共享内存中包括第一对象;
关联模块,用于在成功获取所述进程锁的情况下,在所述共享内存中建立所述第一对象与进程子集的关联关系;
通知模块,用于基于所述共享内存的条件变量信号,唤醒所述进程集合中的处于休眠状态的多个进程,以通知所述处理休眠状态的多个进程中的所述进程子集基于所述第一对象获取所述事件通知的消息内容。
9.根据权利要求8所述的装置,还包括创建模块,用于基于以下方法创建所述共享内存:
基于所述共享内存的内存标识确定尚未创建所述共享内存的情况下,调用内存创建接口发送内存创建请求;
接收所述内存创建接口返回的响应信息;
在所述响应信息指示允许创建所述共享内存的情况下,基于所述内存标识创建所述共享内存;
在开始初始化所述共享内存的情况下,将所述共享内存的状态设置为初始化中;
在所述共享内存初始化完成的情况下,将所述共享内存的状态更新为初始化完成。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿波罗智能技术(北京)有限公司,未经阿波罗智能技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211018251.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:基于自动侦测的设计变更处理系统及其方法
- 下一篇:开源组件的分析方法和装置