Windows threading에 _beginthread / _beginthreadex / CreateThread 비교

조회수 2735회

저 3개를 비교한 장단점을 알고싶습니다.

3 함수 모두 thread를 새로 만들어 주고,

CreateThread를 호출하면 에러를 좀 더 쉽게 알수 있는 것까지는 알고 있는데

그 외에 셋이 어떻게 다른지 비교해주실 수 있나요?

(윈도우에서만 쓸거기 때문에 다른 플랫폼에 대한 내용은 필요없습니다)

1 답변

  • 좋아요

    0

    싫어요
    채택 취소하기
    • CreateThread()는 커널 레벨에서 thread를 생성하는 raw Win32 API
    • _beginthread() 와 _beginthreadex()는 뒤에서 CreateThread()를 호출하는 C runtime library입니다

    _beginthread/ex()는 그냥 CreateThread()를 부르는 것 외에도 새 thread에 대해 추가적인 정보를 저장하는 등 중요한 일을 하고 있고, C++에서는 _beginthreadex()을 써야만 C runtime library와 링킹할 수 있습니다.

    _beginthread() 와 _beginthreadex()의 차이는 Microsoft - Developer Network를 보는게 좋을 듯 합니다.

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

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

(ಠ_ಠ)
(ಠ‿ಠ)