로딩
요청 처리 중입니다...

C++ 멀티스레딩

 C++ 멀티스레딩

이번에는 C++ 멀티스레딩(Multithreading)에 대해 정리하겠다. ① 개요 1) 정의 → 하나의 프로그램 내에서 여러 개의 스레드(Thread)가 동시에 실행되는 개념 → 일반적으로 프로그램은 하나의 흐름(메인 스레드)에서 실행 → 멀티스레딩을 사용하면 여러 개의 작업을 동시에 수행 가능 2) 장점 성능 향상 → CPU의 여러 코어를 활용하여 병렬 처리 가능 → 연산 속도가 빨라질 수 있음 응답성 개선 → GUI 애플리케이션에서 UI 스레드와 작업 스레드를 분리하면 사용자 인터페이스가 멈추지 않고 부드럽게 동작 가능 자원 공유 → 같은 프로세스 내에서 여러 스레드가 메모리와 자원을 공유 가능 → 데이터 교환이 용이 3) 단점 경쟁 상태(Race Condition) → 여러 스레드가 동시에 같은 데이터에 접근하면 예기치 않은 동작이 발생 가능 데드락(Deadlock) → 두 개 이상의 스레드가 서로의 자원을 기다리며 영원히 멈추는 상태가 발생 가능 디버깅 어려움 →...

원문 링크 : C++ 멀티스레딩