1
Как определить между дочерним процессом и его дочерним элементом?Определить дочерний элемент дочернего процесса?
pid_t pid = fork();
if (pid == 0) // child 1
{
int pid2 = fork();
if (pid2 == 0)// child of child 1
{ ....
Как мы можем различать ребенка 1 и его ребенка? Они оба имеют одинаковый pid 0?
Я не уверен, я понимаю ваш вопрос. У внука будут как 'pid', так и' pid2' равными 0. Прямой ребенок будет иметь только «pid» 0. – StoryTeller
Если 'pid2' равно нулю, то вы находитесь в« внуке », ребенке ребенка. Не имеет значения, когда или где вы называете 'fork', или насколько глубоко вы идете с количеством детей. Если 'fork' возвращает ноль, то вы находитесь в дочернем процессе процесса, который называется' fork'. –
Да, но есть ли идентификаторы, которые определяют, на каком уровне мы находимся? это первый или n-й ребенок? – Bionix1441