[问题] Qt动态折线图 cpu使用率高

楼主: gj942l41l4 (米食主義者)   2017-06-04 16:43:01
大家好
我最近利用Qt写个程式(作业系统windows10)
将sensor讯号经由ADC利用RS485抓到电脑并做real-time资料绘图
(每抓一笔资料就把它画进折线图中即时知道趋势)
我把Qt中两个范例程式"terminal"和"dynamic spline"做结合去弄出我要的功能
是做得出来,但我跑这个程式的时候CPU使用率偏高
而实际要执行程式的电脑是平板电脑CPU不好,且同时有别的程式要执行
偶尔会不小心让另一个程式crash
我不是电资背景的只学过简单程式设计,不太知道遇到这种状况该怎么找问题
但我自己观察,范例程式"dynamic spline"单独执行时CPU使用率本身就很高
我想主要问题应该出在它的绘图方法上
想请问大家有比较好的解决方法让动态绘图不那么吃效能吗?
谢谢大家
作者: MOONY135 (谈无欲)   2017-06-04 21:11:00
QChart? 感觉不是绘图造成的 你塞假资料不要扫数据看看你塞假资料就可以知道是绘图造成 还是扫资料的地方让你的程式顿
作者: bdvstg (bdvstg)   2017-06-04 22:53:00
https://doc.qt.io/qt-5/qtcharts-examples.html要不要试试Audio Example或是Qml Oscilloscope看介绍 示波器那个 适合在有效能需求的情况下用
楼主: gj942l41l4 (米食主義者)   2017-06-06 07:46:00
谢谢你们!我后来是把程式功能分段拿掉去观察CPU使用率后找到问题,发现是一个在dynamic spline范例程式中用来随时间制造假资料的timer会吃CPU,会一次把整个线程吃掉。我忘了删掉它,但我的程式根本没有使用到它...
作者: longlongint (华哥尔)   2017-06-06 18:51:00
spline绘制本身吃资源 看你要改用直线还是多累积一些资料再一次更新画面

Links booklink

Contact Us: admin [ a t ] ucptt.com