作者gj942l41l4 (米食主義者)
看板C_and_CPP
標題[問題] Qt動態折線圖 cpu使用率高
時間Sun Jun 4 16:43:01 2017
大家好
我最近利用Qt寫個程式(作業系統windows10)
將sensor訊號經由ADC利用RS485抓到電腦並做real-time資料繪圖
(每抓一筆資料就把它畫進折線圖中即時知道趨勢)
我把Qt中兩個範例程式"terminal"和"dynamic spline"做結合去弄出我要的功能
是做得出來,但我跑這個程式的時候CPU使用率偏高
而實際要執行程式的電腦是平板電腦CPU不好,且同時有別的程式要執行
偶爾會不小心讓另一個程式crash
我不是電資背景的只學過簡單程式設計,不太知道遇到這種狀況該怎麼找問題
但我自己觀察,範例程式"dynamic spline"單獨執行時CPU使用率本身就很高
我想主要問題應該出在它的繪圖方法上
想請問大家有比較好的解決方法讓動態繪圖不那麼吃效能嗎?
謝謝大家
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.168.117.106
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_and_CPP/M.1496565784.A.209.html
1F:→ MOONY135: QChart? 感覺不是繪圖造成的 你塞假資料不要掃數據看看 06/04 21:11
2F:→ MOONY135: 你塞假資料就可以知道是繪圖造成 還是掃資料的地方 06/04 21:12
3F:→ MOONY135: 讓你的程式頓 06/04 21:12
5F:→ bdvstg: 要不要試試Audio Example或是Qml Oscilloscope 06/04 22:55
6F:→ bdvstg: 看介紹 示波器那個 適合在有效能需求的情況下用 06/04 22:57
7F:→ gj942l41l4: 謝謝你們!我後來是把程式功能分段拿掉去觀察CPU使用 06/06 07:46
8F:→ gj942l41l4: 率後找到問題,發現是一個在dynamic spline範例程式中 06/06 07:46
9F:→ gj942l41l4: 用來隨時間製造假資料的timer會吃CPU,會一次把整個線 06/06 07:46
10F:→ gj942l41l4: 程吃掉。我忘了刪掉它,但我的程式根本沒有使用到它.. 06/06 07:46
11F:→ gj942l41l4: . 06/06 07:46
12F:推 longlongint: spline繪製本身吃資源 看你要改用直線還是多累積一 06/06 18:51
13F:→ longlongint: 些資料再一次更新畫面 06/06 18:51