c언어에서 fork로 여러개의 자식프로세스를 생성해서 자식프로세스들이 return 1을 했을때 리턴값의 합을 부부모프로세스에서 출력하고싶은데 어떻게 해야하나여??
아래 링크는 구글에 "fork exit status" 검색해서 나온 페이지입니다.https://www.geeksforgeeks.org/exit-status-child-process-linux/
아래 링크는 구글에 "waitpid system call" 검색해서 나온 페이지입니다. https://codetravel.tistory.com/42
두 페이지 모두 샘플코드도 포함하고 있습니다. fork() 이후 부모프로세스에서 wait()나 waitpid() 실행하여 자식프로세스의 종료를 기다린 다음, WIFEXITED(status)와 WEXITSTATUS(status)를 이용하여 종료코드를 알아내는 식이네요.
종료코드는 자식프로세스가 return 1; 이나 exit(1); 로 종료시 1이 넘어오는 식이니, 샘플을 응용하시면 원하시는 바가 가능하겠습니다.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
아래 링크는 구글에 "fork exit status"
아래 링크는 구글에 "fork exit status" 검색해서 나온 페이지입니다.
https://www.geeksforgeeks.org/exit-status-child-process-linux/
아래 링크는 구글에 "waitpid system call" 검색해서 나온 페이지입니다.
https://codetravel.tistory.com/42
두 페이지 모두 샘플코드도 포함하고 있습니다. fork() 이후 부모프로세스에서 wait()나 waitpid() 실행하여 자식프로세스의 종료를 기다린 다음, WIFEXITED(status)와 WEXITSTATUS(status)를 이용하여 종료코드를 알아내는 식이네요.
종료코드는 자식프로세스가 return 1; 이나 exit(1); 로 종료시 1이 넘어오는 식이니, 샘플을 응용하시면 원하시는 바가 가능하겠습니다.
댓글 달기