Ich möchte es so machen, dass Parent-Prozess vor dem Kind-Thread ausgeführt wird. Ich bin nicht sicher, wo ich falsch liege, um die Reihenfolge zu erhalten, die mein Programm ausgibt.wie Eltern vor Before thread ausführen - pthreads in c
int status = 0;
void *print_child(void *arg)
{
while (status == 0)
{
printf("Signal hasn't changed..\n");
sleep(1);
}
printf("The child has started...\n");
printf("The child is done! \n ");
}
int main()
{
pthread_t child;
pthread_create(&child, NULL, &print_child, NULL);
sleep(2);
printf("The parent has started...\n");
printf("The parent is done! \n");
status++;
if (pthread_join(child, NULL))
{
printf("ERROR");
exit(1);
}
}
OUTPUT:
signal has changed
signal has changed
parent has started
parent is done
child has started
child is done
Wenn Sie sequentiell Aktionen ausführen möchten, warum überhaupt Threads verwenden? Threads sind für Dinge, die parallel gemacht werden. –
Sie legen Eltern zu schlafen, während Kind so läuft .... – LPs
@DarkFalcon Es riechen wie Schule Zuweisung – LPs