一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种多线程的数据传输方法和装置与流程

2022-03-26 10:16:22 来源:中国专利 TAG:

技术特征:
1.一种多线程的数据传输方法,其特征在于,涉及通信连接的坐席主控服务器和多个控制客户端,所述坐席主控服务器和所述控制客户端均包括有套接字接口,所述方法包括:实时监听各个所述套接字接口;当监听到任一所述套接字接口接收到接收数据时,将所述接收数据缓存至所述套接字接口关联的消息队列;通过所述消息队列对应的消息队列线程依次读取所述消息队列内的接收数据并解析,确定所述接收数据的数据类型;若所述数据类型为配置指令数据,则根据所述接收数据构建所述目标服务器数据包并发送至所述坐席主控服务器;若所述数据类型为响应数据,则对所述接收数据进行协议头封装,生成目标客户端数据包并返回至所述控制客户端。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:响应于输入的监听请求,创建epoll句柄;将各个所述套接字接口分别注册至所述epoll句柄,创建监听线程;其中,所述监听线程用于实时监听各个所述套接字接口。3.根据权利要求1所述的方法,其特征在于,所述若所述数据类型为配置指令数据,则根据所述接收数据构建所述目标服务器数据包并发送至所述坐席主控服务器的步骤,包括:若所述数据类型为配置指令数据,则对所述配置指令数据包进行协议头封装,生成目标服务器数据包;采用所述目标服务器数据包携带的协议会话id作为主键,将指令类型和返回值状态作为键值,构建映射关系信息;将所述映射关系信息逐一缓存至所述坐席主控服务器对应的映射队列;发送所述目标服务器数据包至所述坐席主控服务器。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:通过所述消息队列线程获取所述接收数据携带的应用场景标识,按照所述应用场景标识确定对应的超时时间;通过所述消息队列线程轮询所述映射队列内的所述映射关系信息;若所述映射关系信息内的返回值状态在所述超时时间内未被更新,则将超时未处理信息作为新的接收数据并返回至所述套接字接口;若所述映射关系信息内的返回值状态在所述超时时间内被更新,则基于更新后的返回值状态生成新的接收数据并返回至所述套接字接口。5.根据权利要求3或4所述的方法,其特征在于,所述坐席主控服务器包括服务器处理线程;所述服务器处理线程用于:读取所述目标服务器数据包对应的数据包协议会话id和数据包指令类型;判断数据包协议会话id是否存在于所述映射队列;若是,则从所述映射队列获取对应的映射关系信息,判断所述映射关系信息内的指令类型是否与所述数据包指令类型一致;若一致,则按照所述目标服务器数据包执行配置,并基于配置结果更新所述返回值状
态。6.一种多线程的数据传输装置,其特征在于,涉及通信连接的坐席主控服务器和多个控制客户端,所述坐席主控服务器和所述控制客户端均包括有套接字接口,所述装置包括:监听模块,用于实时监听各个所述套接字接口;接收数据缓存模块,用于当监听到任一所述套接字接口接收到接收数据时,将所述接收数据缓存至所述套接字接口关联的消息队列;数据类型确定模块,用于通过所述消息队列对应的消息队列线程依次读取所述消息队列内的接收数据并解析,确定所述接收数据的数据类型;配置指令数据处理模块,用于若所述数据类型为配置指令数据,则根据所述接收数据构建所述目标服务器数据包并发送至所述坐席主控服务器;响应数据处理模块,用于若所述数据类型为响应数据,则对所述接收数据进行协议头封装,生成目标客户端数据包并返回至所述控制客户端。7.根据权利要求6所述的装置,其特征在于,所述装置还包括:句柄创建模块,用于响应于输入的监听请求,创建epoll句柄;监听线程创建模块,用于将各个所述套接字接口分别注册至所述epoll句柄,创建监听线程;其中,所述监听线程用于实时监听各个所述套接字接口。8.根据权利要求6所述的装置,其特征在于,所述配置指令数据处理模块包括:数据封装子模块,用于若所述数据类型为配置指令数据,则对所述配置指令数据包进行协议头封装,生成目标服务器数据包;映射关系信息构建子模块,用于采用所述目标服务器数据包携带的协议会话id作为主键,将指令类型和返回值状态作为键值,构建映射关系信息;映射关系信息缓存子模块,用于将所述映射关系信息逐一缓存至所述坐席主控服务器对应的映射队列;封装数据包发送子模块,用于发送所述目标服务器数据包至所述坐席主控服务器。9.根据权利要求8所述的装置,其特征在于,所述装置还包括:超时时间确定模块,用于通过所述消息队列线程获取所述接收数据携带的应用场景标识,按照所述应用场景标识确定对应的超时时间;信息轮询模块,用于通过所述消息队列线程轮询所述映射队列内的所述映射关系信息;状态未更新处理模块,用于若所述映射关系信息内的返回值状态在所述超时时间内未被更新,则将超时未处理信息作为新的接收数据并返回至所述套接字接口;状态已更新处理模块,用于若所述映射关系信息内的返回值状态在所述超时时间内被更新,则基于更新后的返回值状态生成新的接收数据并返回至所述套接字接口。10.根据权利要求8或9所述的装置,其特征在于,所述坐席主控服务器包括服务器处理线程;所述服务器处理线程用于:读取所述目标服务器数据包对应的数据包协议会话id和数据包指令类型;判断数据包协议会话id是否存在于所述映射队列;若是,则从所述映射队列获取对应的映射关系信息,判断所述映射关系信息内的指令类型是否与所述数据包指令类型一致;
若一致,则按照所述目标服务器数据包执行配置,并基于配置结果更新所述返回值状态。

技术总结
本发明公开了一种多线程的数据传输方法和装置,涉及通信连接的坐席主控服务器和多个控制客户端,坐席主控服务器和控制客户端均包括有套接字接口,方法包括:实时监听各个套接字接口;当监听到任一套接字接口接收到接收数据时,将接收数据缓存至套接字接口关联的消息队列;通过消息队列对应的消息队列线程依次读取消息队列内的接收数据并解析,确定接收数据的数据类型;若数据类型为配置指令数据,则根据接收数据构建目标服务器数据包并发送至坐席主控服务器;若数据类型为响应数据,则对接收数据进行协议头封装,生成目标客户端数据包并返回至控制客户端,从而在提高数据处理效率的同时,实现响应超时提醒。实现响应超时提醒。实现响应超时提醒。


技术研发人员:彭曦
受保护的技术使用者:威创集团股份有限公司
技术研发日:2021.12.17
技术公布日:2022/3/25
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献