2010-12-15 66 views
5

我是GUI編程和多線程新手。我正在創建一個實時應用程序,從我的汽車接收信息並以一種有意義的方式呈現它。我的應用程序分爲3個線程,GUI(主線程),渲染線程和硬件通信線程。在渲染中,硬件線程是共享的環形緩衝區。在渲染過程中,我創建了一個計時器,以便每秒鐘繪製新的界面20次。我希望線程通知主線程有一個新的屏幕可用,並且我認爲信號/插槽方法對此最好。這回到我的問題。當我的渲染調用一個插槽時,比如Screen_Avalable,它位於主線程的主窗口對象中,是否在我的工作線程或主線程中處理此插槽/方法?Qt信號/插槽和線程

+0

請注意,從GUI線程以外的任何線程實際繪製GUI的內容可能不是一個好主意。您的渲染線程可能應該準備數據來繪製並使用隊列或其他東西將其傳遞到GUI線程。 – 2010-12-15 17:16:46

+0

在Qt中,你不能顯示Gui線程以外的任何東西 – 2010-12-15 17:29:03

+0

我打算畫一個pixmap,然後將pixmap傳遞給gui線程以畫到屏幕 – Talguy 2010-12-15 17:36:52

回答

4

它在默認情況下會在主線程中處理,但請參閱this guide以獲取更多信息。

2

它在主線程上得到處理。