大家帮忙分析一下谢谢:使用定时器每10ms去打印保存表格数据(表格存12h的数据),上位机运行初期很准确,但是到后面越运行计时时间越久。重启上位机初期也是很准确,后面也是越运行计时时间越久。
后来的最新发现:打印表格时间从12h调小到1min,每一分钟自动生成一个新表格去打印保存数据,这样子就不会计时延长。请教一下大家,这是什么原因呢?
根本原因是10ms保存不合理,正常操作需要有缓冲区,间隔10ms,向缓冲区插入数据,另外一个线程定时10秒或其他时间,取出数据做处理或保存
10ms对于保存操作来说太短了,所以导致上一个槽没执行完,下一个就已经在排队了,你可以修改Qtimer为单次触发,再槽函数内尾部再次启动Qtimer
提醒,WIndows Timer计时精度≈15ms
1.5w+
社区成员
2.6w+
社区内容