Я пытался создать двух дочерних процессов для одного родительского процесса с помощью fork (), а затем выполнил две «разные» команды для этих двух дочерних элементов. Я пытаюсь пропинговать два разных сайта с этими дочерними процессами. Дело в том, что когда выполняется первая команда ping, она не заканчивается, я пытался решить эту проблему, передавая -c сумму, чтобы ограничить количество выводов, но по какой-то причине он не выполняет свою работу. Вот код:
pid = fork();
if(pid!=0) {
wait(&status);
printf("----------------------------------------------------\n\n");
printf ( " I am the parent my PID is %d, myPPID is %d, \n ",getpid(),getppid());
printf("---------------------------------------------------\n\n");
}else {
printf ( " I am the child , my PID is %d , my PPID is %d \n",getpid(),getppid());
printf("---------------------------------------------------\n\n");
execl ( "/bin/ping","-c5", "sheffield.ac.uk",(char*)0);
return 0;
if(pid!=0){
printf ( " I am the child , my PID is %d , my PPID is %d \n",getpid(),getppid());
printf("---------------------------------------------------\n\n");
}else {
printf ( " I am the child , my PID is %d , my PPID is %d \n",getpid(),getppid());
printf("---------------------------------------------------\n\n");
sleep(2);
execl ( "/bin/ping","-c5", "shu.ac.uk",(char*)0);
return 0;
}
}
break;