- 2022.5.2
- 2022.5.3
- 2022.5.4
- 2022.5.5
- 2022.5.6
- 2022.5.7
- 2022.5.8
经过大量的测试,找到了引起TCP缓冲区不足的原因,当数据出错时接收者会按照固定形式接收数据,这导致接收者出现错误,卡在了一个步骤上,无法继续往下执行,因此发送者迟迟收不到确认,消息一直保留在缓冲区中,从而无法发送其他消息。并对此进行了修正,成功在板子和服务器上通过TCP连接实现了数据传输和可视化。
2022.5.3和另一位组员测试部分流程,发现一个mapping_path的消息大小一直在增长(全局路径,随路径延长而增加),最初给的大小不足以容纳消息,导致段错误。修复了该问题。
可以看到,type2即mapping_path类型的消息,后期长度增长到了179376字节,这是一个比较庞大的数字了,快赶上点云数据的大小了。
等待共享内存模块的更新,暂停一天。
2022.5.5从另一位组员那里拿到了共享内存模块,给可视化、数据包、消息服务器加上了新的接口,增加了信号量。
2022.5.6对新的消息服务器和可视化进行测试,出现了TCP缓冲区不足的bug,和之前原因不同,又出现了内存释放多次或者访问越界的bug,测试了很久暂未弄明白bug出现的原因。
2022.5.7对数据包进行测试,无法正常播放和录制,信号量总是处于阻塞状态,测试许久也未找到出现bug的原因。最终发现是信号量的两次初始化导致的问题,等另一位组员修改信号量的接口部分,明天继续测试。
2022.5.8讲修改后的信号量接口嵌入数据包、消息服务器,经过多轮测试,信号量阻塞的bug已经消失,可视化项目也可以正常跑完一个长达400s的数据包,经过七轮测试,有两轮出现了段错误的bug,且出现的时间也不一致,由于其难以复现,暂未找到出现段错误的原因。等待后面移植到板子上再继续测试,寻找bug出现的原因。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)