[发明专利]一种事件处理方法、装置、设备及计算机可读存储介质在审
申请号: | 202110805102.0 | 申请日: | 2021-07-16 |
公开(公告)号: | CN113626213A | 公开(公告)日: | 2021-11-09 |
发明(设计)人: | 李丰军;周剑光;王腾达 | 申请(专利权)人: | 中汽创智科技有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;贾允 |
地址: | 211100 江苏省*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 事件 处理 方法 装置 设备 计算机 可读 存储 介质 | ||
本申请公开了一种事件处理方法、装置、设备及计算机可读存储介质,所述方法包括:第一协程生成目标业务对应的目标事件;其中,所述目标事件包括第二协程的目标协程标识信息,所述第一协程为第一进程对应线程下的协程,所述第二协程为第二进程对应线程下的协程;所述第一协程通过所述第一进程和所述第二进程间的目标网络通信链路,向所述第二进程发送所述目标事件;所述第二进程内的调度线程根据所述目标协程标识信息,调度所述第二协程执行所述目标事件。利用本申请提出的技术方案至少可以提高多个事件的跨进程并发处理效率。
技术领域
本申请涉及计算机技术领域,尤其涉及一种事件处理方法、装置、设备及计算机可读存储介质。
背景技术
为了实现多个事件的跨进程并发处理,目前采用的技术方案为:目标进程接收到其他进程发送的多个事件的情况下,目标进程的线程调度器为目标进程内的多个线程分配时间片,在轮到每个线程对应的时间片的情况下,将CPU(Central Processing Unit,中央处理器)资源切换给每个线程,调用每个线程对每个事件进行处理。显然,这种方案增加CPU资源的切换开销,还降低多个事件的跨进程并发处理效率。
发明内容
本申请提供了一种事件处理方法、装置、设备及计算机存储介质,至少可以提高多个事件的跨进程并发处理效率。
本申请提供了一种事件处理方法,该方法包括:
第一协程生成目标业务对应的目标事件;其中,所述目标事件包括第二协程的目标协程标识信息,所述第一协程为第一进程对应线程下的协程,所述第二协程为第二进程对应线程下的协程;
所述第一协程通过所述第一进程和所述第二进程间的目标网络通信链路,向所述第二进程发送所述目标事件;
所述第二进程内的调度线程根据所述目标协程标识信息,调度所述第二协程执行所述目标事件。
本申请还提供了一种事件处理装置,该装置包括:
生成模块,用于第一协程生成目标业务对应的目标事件;其中,所述目标事件包括第二协程的目标协程标识信息,所述第一协程为第一进程对应线程下的协程,所述第二协程为第二进程对应线程下的协程;
发送模块,用于所述第一协程通过所述第一进程和所述第二进程间的目标网络通信链路,向所述第二进程发送所述目标事件;
第一调度模块,用于所述第二进程内的调度线程根据所述目标协程标识信息,调度所述第二协程执行所述目标事件。
在一些可选的实施例中,上述第一调度模块包括:
第一存储单元,用于所述调度线程根据所述目标协程标识信息,将所述目标事件存储于所述第二协程对应的事件队列;其中,所述第二协程对应的事件队列用于存储所述第二协程对应的待处理的事件;
第二存储单元,用于所述调度线程将所述第二协程存储于协程队列;其中,所述协程队列用于存储待调度的协程;
第一调度单元,用于所述调度线程基于第一位置信息和第二位置信息,调度所述第二协程执行所述目标事件;其中,所述第一位置信息表征所述第二协程在所述协程队列中的位置,所述第二位置信息表征所述目标事件在所述第二协程对应的事件队列中的位置。
在一些可选的实施例中,上述第一调度单元包括:
第一调度子单元,用于所述调度线程依次调度目标协程执行待执行事件;其中,所述目标协程为位于所述协程队列的首端的协程,所述待执行事件为位于所述目标协程对应的事件队列的首端的事件;
第一删除子单元,用于在所述目标协程执行完所述待执行事件的情况下,所述调度线程将所述待执行事件从所述目标协程对应的事件队列中删除,并判断所述目标协程对应的事件队列是否为空;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中汽创智科技有限公司,未经中汽创智科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110805102.0/2.html,转载请声明来源钻瓜专利网。