-3

フォークはすでにコードで発生しています:

if (pid == 0) {
    printf("I am child PID %d\n", getpid());
    exit(EXIT_SUCCESS);
} else {
    pid_t child;
    int status;
    //need wait() function that gets child pid and exit status
    printf("Child PID %d terminated with return status %d\n", child, status);
}

コードでコメントされているように、子が終了するのを待って、子のPIDと結果の終了ステータスコードを取得する適切な待機関数が必要です。ありがとう!

4

1 に答える 1

0

wait()、またはwaitpid()(実際には同じページ)を使用できます。

または、BSDを使用している場合は、、、wait3()またはwait4()(ただし、AFAIK、ではありませんwait2())。

于 2012-06-13T16:19:06.147 に答える