[发明专利]一种多线程事件生产消费方法、系统、设备和存储介质在审
申请号: | 202111627551.7 | 申请日: | 2021-12-28 |
公开(公告)号: | CN114296963A | 公开(公告)日: | 2022-04-08 |
发明(设计)人: | 赵宇;薛潋;苏衎 | 申请(专利权)人: | 湖南快乐阳光互动娱乐传媒有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/50 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 张珊珊 |
地址: | 410003 湖南省*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多线程 事件 生产 消费 方法 系统 设备 存储 介质 | ||
本发明实施例提供了一种多线程事件生产消费方法、系统、设备和存储介质,其中,方法包括:生产者模块根据预设创建事件规则,生成携带有优先级的待消费事件,并根据预设事件添加策略,对优先级不大于第一预设阈值的待消费事件,逐一执行加入消息队列操作,消费者模块监测到加入消息队列操作执行完毕时,判断消息队列中的待消费事件的数量是否等于第一数量,若是,则遍历消息队列中的第一数量个待消费事件,逐个对第一数量个待消费事件执行消费操作,消费者模块在监测到消息队列中的第一数量个待消费事件被全部消费时,清空消息队列,并监测清空后的消息队列,是否发生加入消息队列操作。本发明实现了提高业务开发效率的发明目的。
技术领域
本发明涉及程序开发设计领域,特别是涉及一种多线程事件生产消费方法、系统、设备和存储介质。
背景技术
在进行移动端程序开发的过程中,不可避免的会产生埋点、日志记录和性能打点等操作。目前实现上述操作的方式,是直接将上述操作的程序直接写入正在运行业务的主线程中。由于主线程中存在正在运行的业务,当执行上述操作时,会对主线程造成阻塞,从而导致正在运行的业务出现卡顿,进而影响正常业务的开发效率。
发明内容
本发明实施例的目的在于提供一种多线程事件生产消费方法、系统、设备和存储介质,以实现提高业务开发效率的发明目的。具体技术方案如下:
一种多线程事件生产消费方法,所述方法包括:
生产者模块根据预设创建事件规则,生成携带有优先级的待消费事件,并根据预设事件添加策略,对所述优先级不大于第一预设阈值的所述待消费事件,逐一执行加入消息队列操作,其中,所述生产者模块部署于多个事件生成线程中。
消费者模块监测到所述加入消息队列操作执行完毕时,判断所述消息队列中的所述待消费事件的数量是否等于第一数量,若是,则遍历所述消息队列中的所述第一数量个待消费事件,逐个对所述第一数量个待消费事件执行消费操作,其中,所述第一数量为所述消息队列的最大容量,所述消费者模块固定部署于一个事件监测线程中,所述消费操作,具体包括:向观察者模块发送事件消费指令,以使所述观察者模块响应于所述事件消费指令,在不占用所述事件监测线程的情况下,对所述待消费事件进行消费。
所述消费者模块在监测到所述消息队列中的所述第一数量个待消费事件被全部消费时,清空所述消息队列,并监测所述清空后的消息队列,是否发生所述加入消息队列操作。
可选的,在所述消费者模块监测到所述加入消息队列操作执行完毕时,判断所述消息队列中的所述待消费事件的数量小于第一数量时,所述方法还包括:
所述消费者模块向所述生产者模块发送添加事件指令,以使所述生产者模块响应于所述添加事件指令,执行所述加入消息队列操作。
可选的,所述方法还包括:
在所述消费者模块向所述生产者模块发送所述添加事件指令后,判断所述消息队列的监控时长是否大于第二预设阈值,若是,则遍历所述消息队列中的第二数量个待消费事件,逐个对所述第二数量个待消费事件执行所述消费操作,其中,所述第二数量小于所述第一数量。
可选的,所述生产者模块根据预设创建事件规则,生成携带有优先级的待消费事件,并根据预设事件添加策略,对所述优先级不大于第一预设阈值的所述待消费事件,逐一执行加入消息队列操作,包括:
所述生产者模块根据预设创建事件规则,生成多个携带有优先级的所述待消费事件。
判断所述消息队列中的所述待消费事件的数量是否小于所述第一数量,若是,则将所述优先级不大于第一预设阈值的所述待消费事件,逐一加入到所述消息队列中。
可选的,在所述判断所述消息队列中的所述待消费事件的数量是否小于所述第一数量之前,还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南快乐阳光互动娱乐传媒有限公司,未经湖南快乐阳光互动娱乐传媒有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111627551.7/2.html,转载请声明来源钻瓜专利网。