• 카테고리

    질문 & 답변
  • 세부 분야

    시스템

  • 해결 여부

    해결됨

예제 코드 질문입니다

22.01.17 20:23 작성 조회수 182

1

자식 코드도 부모 프로세스의 코드와 완전히 동일 하다면

int pid;

pid = fork(); 부분도 자식 프로세스가 실행하게 되나요??

 

그러면 자식 프로세스는 또 하나의 자식 프로세스를 계속 재귀적으로 생성하는 거 아닌가요??

답변 1

답변을 작성해보세요.

1

자식 프로세스의 코드와 부모프로세스의 코드의 완전히 동일한 부분은 fork()함수 호출한 후 입니다!
자식 프로세스가 새로 생성됐다고해서 0번 라인부터 시작되지 않습니다. 영상의 예시에서 9번 라인 이후로 실행됩니다.
정확히는 영상에서 예시코드에서 10번 라인의 

if(pid == 0)

이 부분부터 시작되기 때문에 재귀적으로 실행되는 상황은 나오지 않습니다!