fork()、wait()、waitpid()、ゾンビ プロセスを知っています...非常に優れた本である W. Richard Stevens を読んで理解しました。
親でwait()を呼び出さないと、終了後に子がゾンビになります...これは悪いことです!
親で wait() を呼び出すと、親は子が終了するのを待ち、終了ステータスを受け取ってから続行します。書く?
fork() を一度呼び出してから、親で wait() を呼び出す多くの例を見てきました。
しかし、親が子を待ち、子が終了した後も続行する場合、実際のマルチタスクは行われません (技術的には 2 つのプロセスがありますが、論理的には役に立たない) では、なぜここで fork() を呼び出したのでしょうか?
fork() と wait() を 1 つのプロセスとして記述する代わりに、子のコードを記述してから親のコードを記述することもできたはずですが、そのほうがよいのではないでしょうか?
ありがとう!