多线程异步转同步的消息处理方法、终端、介质及系统技术方案

技术编号:32883136 阅读:70 留言:0更新日期:2022-04-02 12:17
本发明专利技术实施例公开了一种多线程异步转同步的消息处理方法,适用于全双工异步通信,包括:通过写线程发送请求消息或请求命令至服务器;根据请求消息或请求命令生成收集器;收集器包括消息过滤器及阻塞队列,阻塞队列用于实现写线程阻塞;将多个收集器加入路由器;通过读线程读取返回消息,并将其发送至路由器;通过路由器遍历所有收集器的消息过滤器,以判断返回消息是否为请求消息或请求命令的返回消息;若是,则将返回消息压入阻塞队列,解除写线程的阻塞,使得写线程获取返回消息,从而实现读写线程的异步转同步。实施本发明专利技术实施例,可以实现多并发下高效的异步到同步的转换。以实现多并发下高效的异步到同步的转换。以实现多并发下高效的异步到同步的转换。

【技术实现步骤摘要】
多线程异步转同步的消息处理方法、终端、介质及系统


[0001]本专利技术涉及计算机通信
,具体涉及一种多线程异步转同步的消息处理方法、终端、介质及系统。

技术介绍

[0002]在网络、串口等全双工通信中,读线程和写线程通常是异步通信的。所谓异步通信,指的是发送方发出数据后,不等待接收方发回反应,便发送下一个数据包。但在很多实际应用场景中,要求必须采用同步通信方式,即必须收到该命令的返回消息后,才能执行下一条命令。
[0003]为了满足实际应用场景中同步通信的需求,现有技术中可采用同步锁实现异步转同步的功能。但当发生多线程同步请求时,同步锁将无法解锁,难以实现异步到同步的转换。

技术实现思路

[0004]针对上述技术缺陷,本专利技术实施例的目的在于提供一种多线程异步转同步的消息处理方法、终端、介质及系统。
[0005]为实现上述目的,第一方面,本专利技术实施例提供了一种多线程异步转同步的消息处理方法,适用于全双工异步通信,包括:
[0006]通过写线程发送请求消息或请求命令至服务器
[000本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种多线程异步转同步的消息处理方法,其特征在于,该消息处理方法适用于全双工异步通信,包括:通过写线程发送请求消息或请求命令至服务器;根据所述请求消息或请求命令生成收集器;所述收集器包括消息过滤器及阻塞队列,所述阻塞队列用于实现所述写线程阻塞;其中,每一条所述请求消息或请求命令对应一收集器;将多个所述收集器加入预先创建的路由器;通过读线程读取所述服务器发送的每一条返回消息,并将所述返回消息发送至所述路由器;通过所述路由器遍历所有收集器的消息过滤器,以判断所述返回消息是否为所述请求消息或请求命令的返回消息;若是,则将所述返回消息压入所述阻塞队列,解除所述写线程的阻塞,使得所述写线程获取所述返回消息。2.如权利要求1所述的消息处理方法,其特征在于,所述写线程获取所述返回消息之后,所述方法还包括:将所述路由器中所述返回消息对应的收集器清除。3.如权利要求1所述的消息处理方法,其特征在于,判断所述返回消息是否为所述请求消息的返回消息,具体为:通过所述消息过滤器,按照自定义规则判断所述返回消息是否为所述请求消息的返回消息;所述自定义规则包括消息类型。4.如权利要求1所述的消息处理方法,其特征在于,所述方法还包括:在预设时间内,若所述阻塞队列未收到所述返回消息,则对所述发送消息进行超时处理。5.一种多线程异步转同步的消息处理设备,其特征在于,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1

4任一项所述...

【专利技术属性】
技术研发人员:赵文博罗军
申请(专利权)人:深圳健路网络科技有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1