[c++] MINGW와 스레딩

MINGW는 Windows 환경에서 C++ 코드를 컴파일하고 실행하기 위한 유명한 도구 모음입니다. MINGW를 사용하여 C++로 다중 스레드를 사용하는 방법에 대해 알아보겠습니다.

MINGW 설치

MINGW를 설치하면 g++ 컴파일러와 다양한 유틸리티를 포함하여 C++ 개발 환경을 구축할 수 있습니다. 공식 MINGW 사이트에서 MINGW 설치 관리자를 다운로드하여 설치할 수 있습니다.

C++ 스레딩

C++11부터 스레딩 기능이 표준 라이브러리에 포함되어 있습니다. 다음은 간단한 C++ 다중 스레드 예제 코드입니다.

#include <iostream>
#include <thread>

void threadFunction() {
    std::cout << "This is a thread" << std::endl;
}

int main() {
    std::thread t(threadFunction);
    t.join();
    return 0;
}

위 코드는 threadFunction을 새로운 스레드에서 실행하고, main 함수가 이 스레드가 종료될 때까지 기다리도록 하는 간단한 예제입니다.

MINGW에서 C++ 스레딩 컴파일

MINGW 환경에서 위 코드를 컴파일하려면 다음 명령어를 사용할 수 있습니다.

g++ -std=c++11 -pthread main.cpp -o main

위 명령어에서 -std=c++11은 C++11 표준을 사용하겠다는 것을 명시하고, -pthread는 POSIX 스레딩 라이브러리를 링크하도록 지시합니다.

그런 다음, 컴파일된 바이너리를 실행하여 C++ 다중 스레드 프로그램을 실행할 수 있습니다.

MINGW를 사용하여 C++ 다중 스레드 프로그램을 개발하고 실행하는 방법에 대해 알아보았습니다. 추가적인 정보는 MINGW 공식 문서 를 참고할 수 있습니다.