Qt의 스레드 지원
Qt는 플랫폼 독립적인 스레딩 클래스, 스레드 안전 이벤트 게시 방식, 스레드 간 신호 슬롯 연결 등의 형태로 스레드 지원을 제공합니다. 이를 통해 휴대용 멀티스레드 Qt 애플리케이션을 쉽게 개발하고 멀티프로세서 머신을 활용할 수 있습니다. 멀티스레드 프로그래밍은 또한 애플리케이션의 사용자 인터페이스를 멈추지 않고 시간이 많이 걸리는 작업을 수행하는 데 유용한 패러다임입니다.
이전 버전의 Qt는 스레드 지원 없이 라이브러리를 빌드할 수 있는 옵션을 제공했습니다. Qt 4.0부터는 스레드가 항상 활성화되어 있습니다.
토픽:
이 글에서는 독자가 멀티스레드 응용 프로그램에 대한 기본적인 지식을 가지고 있다고 가정합니다.
스레딩 클래스
이 클래스는 스레드 응용 프로그램과 관련이 있습니다.
시퀀스에서 값을 선택하고 병렬로 결합하기 | |
시퀀스에서 값을 변환하고 병렬로 결합하기 | |
별도의 스레드에서 작업을 실행하는 간단한 방법 | |
별도의 스레드에서 작업을 실행하는 구성 가능한 방법 | |
정수에 대한 플랫폼 독립적인 원자 연산 | |
포인터에 대한 플랫폼 독립적 원자 연산을 제공하는 템플릿 클래스 | |
비동기 계산의 결과를 나타냅니다. | |
QFuture 동기화를 간소화하는 편의 클래스 | |
신호와 슬롯을 사용하여 QFuture를 모니터링할 수 있습니다. | |
스레드 간 직렬화에 액세스 | |
뮤텍스 잠금 및 잠금 해제를 간소화하는 편의 클래스 | |
QFuture에서 액세스하기 위해 계산 결과를 저장하는 방법 | |
읽기 액세스를 위한 읽기-쓰기 잠금 및 잠금 해제를 간소화하는 편의 클래스 | |
읽기-쓰기 잠금 | |
스레드 간 직렬화 액세스 | |
모든 실행 가능한 객체의 베이스 클래스 | |
일반 계수 세마포어 | |
QSemaphore::release() 호출의 예외 안전 디퍼런트 | |
플랫폼에 독립적인 스레드 관리 방법 | |
Q스레드 컬렉션 관리 | |
스레드별 데이터 저장 | |
스레드 동기화를 위한 조건 변수 | |
쓰기 액세스를 위한 읽기-쓰기 잠금 잠금 및 잠금 해제를 간소화하는 편의 클래스 | |
저수준 스레딩 프리미티브를 사용하지 않고도 멀티스레드 프로그램을 작성할 수 있게 해주는 상위 수준 API | |
작업 매개변수 조정에 사용 | |
QtFuture::언제어디서든 결과는 QtFuture::언제어디서든()의 결과를 표현하는 데 사용됩니다. | |
참고: Qt의 스레딩 클래스는 네이티브 스레딩 API (예: Win32와 pthreads)로 구현됩니다. 따라서 동일한 네이티브 API의 스레드와 함께 사용할 수 있습니다.
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.