首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

用于无阻塞通讯的无锁环形队列实现方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:北京思特奇信息技术股份有限公司

摘要:本发明公开了一种用于无阻塞通讯的无锁环形队列实现方法,包括:调用write函数将外部数据写入CycleBufferSend子类的内部缓存;调用SendBegin函数由内部缓存中读取数据的指针和大小并存放至数组结构中;调用系统发送函数发送数组结构中的数据;调用SendEnd函数修改内部发送状态,完成报文发送;调用RecvBegin函数将缓冲地址存放至数组结构中;调用系统接收函数接收系统发送函数发送的数据,并存放至数组结构中;调用RecvEnd函数修改内部接收状态,完成报文接收;调用read函数由内部缓存中读取数据。通过本发明的技术方案,加快了系统的报文收发效率,提高了系统的吞吐量,不需要频繁的内存分配和释放操作,加快了系统运行速度,也降低了系统的内存碎片化程度。

主权项:1.一种用于无阻塞通讯的无锁环形队列实现方法,其特征在于,包括:调用write函数将外部数据写入CycleBufferSend子类的内部缓存;调用SendBegin函数由所述内部缓存中读取数据的指针和大小并存放至数组结构中;调用系统发送函数发送所述数组结构中的数据;调用SendEnd函数修改所述CycleBufferSend子类的内部发送状态,完成报文发送;调用RecvBegin函数将缓冲地址存放至所述数组结构中;调用系统接收函数接收所述系统发送函数发送的数据,并存放至所述数组结构中;调用RecvEnd函数修改CycleBufferRecv子类的内部接收状态,完成报文接收;调用read函数由所述CycleBufferSend子类的内部缓存中读取数据;在调用所述write函数写入数据之前调用space函数检查是否有空间用以实现写入操作;在调用所述read函数读取数据之前调用length函数动态计算数据长度,以检查是否有可读取的数据;在调用所述write函数后修改写指针的位置,在调用所述SendBegin函数后内部发送状态修改为发送中,数据发送完成后修改读指针的位置,同时将内部发送状态修改为未发送;在调用所述RecvBegin函数后将内部接收状态修改为接收中,数据接收完成后修改写指针的位置,同时将内部接收状态修改为未接收。

全文数据:

权利要求:

百度查询: 北京思特奇信息技术股份有限公司 用于无阻塞通讯的无锁环形队列实现方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。