#c
#c
Вопрос:
Я использую это для настройки процесса в моем основном:
pid = fork();
if (pid == 0)
ChildProcess();
else
ParentProcess();
Как бы я мог настроить больше процессов, скажем, например, x4 из них?
Комментарии:
1. Функции потрясающие.
2. Я знаю. Но мне нужно использовать процессы в моем назначении.
3. Вы можете снова вызвать fork в родительской ветви … РЕДАКТИРОВАТЬ: «функции потрясающие» означает, что вы пишете функцию для fork и сохраняете дочерний pid, затем вызываете 4x
Ответ №1:
Если вы находитесь в родительском процессе, вызовите fork()
еще раз, чтобы получить другого дочернего процесса. Если вы поместите это в цикл, то вы золотой.
for (int i = 0; i < 4; i) {
pids[i] = fork();
if (pids[i] == 0) {
ChildProcess();
break;
}
}
Убедитесь, что дочерний элемент не вызывает fork()
. Только родительский.
Ответ №2:
Есть несколько способов сделать это.
Например:
1. просто повторите fork()
4 раза.
2. используйте цикл для вызова fork()
4 раза.
3. обертывает их в функции