我正在尝试在另一个进程中创建一个子进程。我正在用 C 语言编写这两个程序。首先,我编写了一个虚拟进程,它将成为子进程。它所做的只是在屏幕上写一个字符串。它自己运作良好。然后我编写另一个程序,它将成为父进程。但是,我不能让它发生。我正在尝试同时使用 fork 和 execl 函数,但我失败了。我还希望子进程在父进程终止之前不会终止。
父进程应该怎么写?
谢谢。
下面是子进程的代码:
#include <stdio.h>
int main(void) {
while(1) {
printf("*");
sleep(1);
}
}
这是父进程:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main(void) {
if (fork()) {
while(1) {
printf("-\n");
sleep(5);
}
} else {
execl("./", "dummy", (char *)0);
}
}