我在C中编写了一个应该支持后台和前台进程的shell。
约束:
我的解决方案:
问题:
谢谢!
答案 0 :(得分:0)
问题:
- 前台进程还会触发处理程序,导致两个waitpid中的一个 错误
这不是问题 - 然后离开处理程序。
void handler(int signum)
{
pid_t pid;
while (pid = waitpid(-1, NULL, WNOHANG), pid > 0)
fprintf(stderr, "%d terminated\n", pid);
}