以下程序调用{{1}}并打算生成孤立进程。它工作正常,孤立进程由进程fork()
收集(由命令init
检查)。但为什么bash似乎在等待输入?
ps
执行程序
...
if ((pid = fork() < 0) {
err_sys("fork error"); /* err_sys is declared in apue.h */
} else if (pid == 0) {
/* sleep to ensure that parent process terminates first */
printf("child process: %d\n", getpid());
sleep(2);
exit(0);
}
printf("parent process\n");
exit(0);
}
注意:我正在使用Ubuntu 11.10。
答案 0 :(得分:3)
当它显示提示时,shell不会比平常更新。问题(如果你可以称之为)是子进程打印一些输出后跟换行符。打印此换行符但shell不会打印新提示。就这样。只需像往常一样编写命令,它就可以工作。