Re: [問題] Qt thread
※ 引述《PeterKiller (Peter)》之銘言:
: 開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Ubuntu 10.10 gcc
: 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) Qt
: 問題(Question): 各位版上的高手好 最近在看學習筆記學Qt
: 學到Qthread時 發現他給的範例不能照常執行 來爬文發現在Qthread中
: 不能有QWidget的物件,需要用signal和slut實做。
是 slot...可以去查字典 slut 的意思, 拜託這個誤字很糟糕XD
: 現在遇到的困難是 我寫了一個遊戲開了兩條Qthread,其中第一條是遊戲邏輯,
: 第二條則是讓他一直刷新遊戲畫面,所以我在第二條Qthread中的run只是一直發signal
: 讓我的main thread(GUI thread)去執行update()這個函式..但是我編譯完執行後就發現
: 他整個程式都block住沒辦法動了,想請問各為有什麼解決的辦法?
因為整個執行隊列都被你無窮迴圈裡發出的訊號佔滿了吧...
在畫完一次後用 QThread::msleep() (或 usleep 或 sleep) 延遲一下
: code 在此:
: main : http://codepad.org/mwJ3FXRn
: QWidget object :http://codepad.org/Ellr2zk0
: http://codepad.org/FNvMKyL9
: graph thread : http://codepad.org/TR3aeDvK
: 謝謝
然後你程式碼裡 include 了不少怪東西...
Implementation 部份(.cpp 檔)不用 include QtGui
然後與其用 printf 不如用 std::cout, 更不如用 QDebug, 既然你都在寫 Qt 了
用 std::string 和 pthread 也是很詭異...
--
"問おう、貴方が私のマスターか?"
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.81.146
※ 編輯: uranusjr 來自: 114.32.81.146 (04/06 02:14)
推
04/06 02:30, , 1F
04/06 02:30, 1F
推
04/06 02:30, , 2F
04/06 02:30, 2F
→
04/06 11:11, , 3F
04/06 11:11, 3F
推
04/06 12:01, , 4F
04/06 12:01, 4F
→
04/07 01:53, , 5F
04/07 01:53, 5F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 6 篇):