스레드 생성, join 질문

미해결질문
ProgCoach4U 프로필
ProgCoach4U 1달 전

쓰레드를 생성하는 create_thread()는 child thread가 시작된 후에 리턴하는 것이 아닙니다. 생성 요청만 해놓고 리턴한다고 생각하시면 되겠네요. 그래서 child thread의 실행 직후 코드(thread main 함수의 시작 부분)보다 parent thread의 create_thread() 반환 직후 코드 실행이 더 빠른 경우가 많습니다. 하지만 이것도 보장된 것은 아닙니다. 어떤 연유로 인해 child가 더 먼저 실행되는 경우도 있습니다. 이렇게 OS가 생성되는 쓰레드의 실행 순서를 보장하지 않기 때문에 실행 순서가 중요한 경우에는 쓰레드 간 동기화 기법을 적용하는 것이 좋습니다.