Windows threading에 _beginthread / _beginthreadex / CreateThread 비교


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

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

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

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

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

  • 2016년 02월 04일에 작성됨

조회수 306


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를 보는게 좋을 듯 합니다.

  • 2016년 02월 04일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close