听我一句劝,别用封装的库包做底层控制逻辑。
原因:
QtSigSlot 本身的队列机制可能存在最大回调的限制,存在丢回调的限制,如果用回调BlockConnection 面对会阻塞界面QThread QTime 在需要多线程和Arm计算能力差的机器上 体现得很差,线程切换和频繁操作线程exit 将会出现问题(当然这也是操作系统层规定,可以忽略)。QSerialPort 如果你对实时性要求很高,那么这个问题你可能需要注意 Qt内部封装为异步操作(这是GUI内部Event决定的)有可能你的数据有没有通过软件层到系统层发出这是一个问题。而且 readyread 信号(真的很想呵呵)接受不完非string数据。需要数据加装
正确的做法:
原生系统开发流程进行细化分割行程loop持久化状态层与缓存层,为了实现控制指令的对比,跳转到上一次操作交互层一定是采用分离交互式,同时需要保证数据下发可靠性