C++에서 쉽게 쓰레딩(threading) 하는 법

조회수 8929회

저는 C처럼 thread library같은 방법 말고 C++ 스타일(객체 지향) thread 객체를 찾고있습니다.

C++에서 제일 쉽게 쓰레딩 하는 방법을 가르쳐주세요! 쓰레드 2개를 돌리는 프로그램 예제 올려주실 분 안 계신가요?

1 답변

  • 좋아요

    0

    싫어요
    채택 취소하기

    코드에서 주석으로 설명해드리겠습니다.

    #include <string>
    #include <iostream>
    #include <thread> //쓰레드를 위한 헤더파일
    
    using namespace std;
    
    // 쓰레드가 실행해야 할 함수를 설정해주세요
    void task1(string msg)
    {
        cout << "task1 says: " << msg;
    }
    
    int main()
    {
        // 새 쓰레드를 만들어 실행합니다. 현재 쓰레드가 block되지 않습니다.
        thread t1(task1, "Hello");
    
        // main이가 새로 만든 쓰레드가 일을 마칠 때까지 기다리게 만듭니다.
        t1.join();
    }
    

    GCC에 컴파일할 때는 -std=c++0x -pthread를 꼭 해주고 더 자세한 건 std::stread를 참고하세요

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)