python串口通讯分帧逻辑如何实现?

gufengxiaoxiao 2023-11-17 10:11:46

我现在有一个场景是第一次接收到查询报文的时候会生成多条回复报文。完整业务流程是比如我现在接收到了A,我需要回复的B,C,D。但是C,D需要等待它再抄读对应第二个第三个的时候回复。我想的处理逻辑是把C,D放到一个以addr命名全局变量的list中,等下一次抄读如果addr能够对应的上我就从list中拿,如果下一次抄读addr对应不上,我就直接把list清空。
但是目前有两个串口通道,基础串口通道是一次抄读一条报文,在我回复分帧时才会抄读下一条,这个通道按照上述逻辑走的通。另一个串口通道是一次并发抄读多条报文,走上述逻辑的时候大概率我处理的第二帧抄读报文的addr对应不上。这样清空逻辑就不能这么实现了。
根本问题是如果我的项目中存在多个全局list,list中的数据也比较大,会不会引起程序崩溃之类的问题。还有就是如果我一直在生成addr命名的list,即使list被清空了,声明的list是不是还是占用内存,如果是的话,这个空list一直递增会不会也可能引起程序崩溃之类的问题?

...全文
222 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
CSDN-Ada助手 2023-11-17
精选
  • 打赏
  • 举报
回复
您的问题已经帮您同步至问答, 链接: https://ask.csdn.net/questions/8030836, 请您保持关注, 如果回答有帮助解决此问题, 麻烦您动动小手给相关的回答点赞, Ada会在评论区为您更新结题状态

1,625

社区成员

发帖
与我相关
我的任务
社区描述
智能硬件,智能手表,可穿戴设备,智能电视,谷歌眼镜,Google Glass 相关讨论。
社区管理员
  • 智能硬件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧