lol*_* ol 2 c unix linux fork waitpid
我总是听说你永远不应该使用system(),而是fork/exec因为 system() 阻止了父进程。
如果是这样,我是否通过调用 做错了什么waitpid(),这也会在我执行 a 时阻止父进程fork/exec?有没有办法绕过调用waitpid...我一直认为在执行fork/exec.
pid_t pid = fork();
if (pid == -1)
{
// failed to fork
}
else if (pid > 0)
{
int status;
waitpid(pid, &status, 0);
}
else
{
execve(...);
}
Run Code Online (Sandbox Code Playgroud)