diff --git a/fork.cpp b/fork.cpp new file mode 100644 index 0000000..707daa9 --- /dev/null +++ b/fork.cpp @@ -0,0 +1,22 @@ +#include +#include +#include + +int main() { + std::cout << "wo shi ni die" << std::endl; + pid_t pid; + int result; + for (int i = 0; i < 1024; i++) { + if ((pid = fork()) == 0) { + std::cout << "child #" << i << std::endl; + exit(i); + // return 0; + } + else { + waitpid(pid, &result, 0); + } + std::cout << "child #" << i << " exited with code" << WEXITSTATUS(result) << std::endl; + } + + return 0; +} \ No newline at end of file