Я пробую следующий код на C:
int main()
{
printf("text1\n");
fork();
printf("text2\n");
return 0;
}
Я ожидал получить результат, в котором я получаю два » text1 "и два" text2 ", например:
text1
text1
text2
text2
Но вместо этого я получаю:
text1
text2
text2
только один" text1 "??? Хорошо, если дочерний процесс выполняется из fork (), то почему я получаю два «text1» для следующего:
int main()
{
printf("text1");
fork();
printf("text2\n");
return 0;
}
теперь вывод:
text1text2
text1text2
Если дочерний процесс запускается после fork, вывод должен быть:
text1
text2
text2
]