子进程和父进程执行是并行的,首先启动取决于操作系统调度。但是可以做些什么来让孩子总是在父母之前开始呢?
这是我的问题的伪代码,
int start_test()
{
pid_t pid;
pid = fork();
if(pid == 0) {
execv("XXX", XXX);
} else if(pid > 0) {
pid = fork();
if(pid == 0) {
execv("XXX", XXX);
} else {
// Do something
}
}
return 0;
}
int main()
{
start_test();
return 0;
}
我想让第一个 execv 先执行,然后父级再次创建新进程。每个 execv 都应该按顺序排列。