主題:ESM6800在QT程序里使用串口接收數(shù)據(jù)時GUI線程會卡住 共有19594人關(guān)注過本帖 |
---|
![]() hzc |
1樓 信息 | 搜索 | 郵箱 |
![]() ![]() ![]() ![]() |
![]() 你好,可以檢查一下接收線程的操作,在每次接收循環(huán)之間增加一點(diǎn)延時。如果接收線程在接收大量數(shù)據(jù)的時候,是類似死循環(huán)一樣的操作,就會將CPU的資源占完,導(dǎo)致無法正常切換到其他線程的時間片,這樣就會導(dǎo)致其他線程表現(xiàn)出卡頓的現(xiàn)象。 |
單帖管理 | 引用 | 回復(fù) ![]() |
![]() hzc |
2樓 信息 | 搜索 | 郵箱 |
![]() ![]() ![]() ![]() |
![]() 你好,我看代碼中有互斥鎖,可以檢查一下是不是負(fù)責(zé)刷新界面顯示的線程中也加了鎖,所以在接收線程中互斥鎖沒有unlock之前,界面顯示的線程就無法執(zhí)行,導(dǎo)致表現(xiàn)起來就很卡。 |
單帖管理 | 引用 | 回復(fù) ![]() |