vfork () la afirmación atexit falló
Estoy tratando de entender el siguiente fragmento de código
#include<stdio.h>
#include<unistd.h>
#include<sys/types.h>
int main()
{
pid_t pid ;
unsigned int i=0;
pid=vfork();
switch(pid)
{
case -1: // some sort of error
puts("fork error");
break;
case 0: // the child process
while(i<100)
{
printf("%d\n", i);
i++;
}
break;
default: //parent
while(i<1000)
{
printf("%d\n", i);
i++;
}
break;
}
// _exit(0);
}
Y, por favor, no me digas que vfork () es malo y este tipo de cosas. Lo sé, pero lo que está sucediendo exactamente en este código que está causando este tipo de error. Gracias por adelantad