2010-12-15 5 views
5

저는 GUI 프로그래밍 및 멀티 스레딩에 익숙하지 않습니다. 나는 내 차에서 정보를 받고 의미있는 방식으로 렌더링하는 실시간 앱을 만드는 과정에있다. 내 응용 프로그램은 3 스레드, GUI (메인 스레드), 렌더링 스레드 및 하드웨어 통신 스레드로 배치됩니다. Inbetwen은 렌더링과 하드웨어 스레드가 공유 링 버퍼입니다. 렌더링에서 새 인터페이스를 초당 20 회 그리도록 타이머를 만들었습니다. 스레드가 주 화면에 새 화면이 있음을 알리고 싶습니다. 신호/슬롯 방법이 가장 효과적 일 것이라고 생각했습니다. 이것은 나의 질문에 이른다. 내 렌더링이 메인 스레드의 메인 윈도우 객체에있는 슬롯 (예 : Screen_Avalable)을 호출 할 때이 슬롯/메소드가 작업자 스레드 또는 메인 스레드에서 처리됩니까?Qt 신호/슬롯 및 스레드

+0

GUI 스레드가 아닌 다른 스레드에서 실제로 GUI에 무언가를 그리는 것은 좋지 않습니다. 당신의 렌더링 쓰레드는 아마 큐나 무언가를 사용하여 GUI 쓰레드에 그릴 데이터를 준비해야합니다. –

+0

Qt에서 Gui 스레드가 아닌 다른 것들은 표시 할 수 없습니다. –

+0

나는 픽스맵을 그리기 위해 픽스맵을 gui 스레드로 전달하여 화면에 그려야합니다. – Talguy

답변

4

기본 스레드에서 처리되지만 자세한 내용은 this guide을 참조하십시오.

2

메인 스레드에서 처리됩니다.