C 언어에서는 스레드를 생성하는 함수가 운영체제마다 달랐습니다. 예를 들어 윈도 앱을 개발할 때는 다음과 같이 작성합니다.

    코드 윈도일 때

    DWORD threadID;
    ThreadParam threadParam;
    threadParam.value = 123;
    CreateThread(
        ...,
        ThreadProc, &threadParam,
        ...,
        &threadID);

     

    반면 리눅스나 유닉스에서는 다음과 같이 작성합니다.

    코드 리눅스나 유닉스 계열일 때

    pthread_t thread;
    ThreadParam threadParam;
    threadParam.value = 123;
    thread_create(&thread, NULL, ThreadProc, &threadParam);

     

    하지만 모던 C++1에서는 다음과 같이 통일했습니다.

    코드 모던 C++

    std::thread t1(ThreadProc, 123);

     

    Tip

    게임 개발을 할 때는 C++뿐만 아니라 C#, 자바, 자바스크립트, 파이썬, Lua 등 다양하게 사용합니다. 우리는 여기서 주로 C++를 사용하겠습니다. C++는 성능과 관련하여 부작용이 거의 없으며 대부분 플랫폼에서 사용할 수 있는 언어이기 때문입니다.

     

    1 모던(Modern) C++는 C++11 이후를 의미합니다. 현재 윈도뿐만 아니라 리눅스, iOS의 C++ 개발 환경에서는 이미 대부분 지원하고 있습니다.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.