¿Cómo puedo configurar un entorno de cuarentena para poder probar mis códigos o programas que pueden bifurcarse varias veces? Estaba probando esto en Mac y si tengo una bifurcación en un bucle while que no está enlazada correctamente, el terminal se congela y muestra el recurso de bifurcación no disponible temporalmente. En ese caso, ni siquiera puedo usar ps o kill y tengo que apagarlo cada vez que lo encuentro.
Además, estoy intentando eliminar el proceso de mi hijo usando _exit(3); es posible que esté haciendo esto mal. ¿Puede alguien ayudarme con eso?
Aquí está el código que estaba probando.
pid = fork();
if(pid > 0){
if(findCharInString(';',input)){
printf("Two commands %s\n",input );
sleep(1);
_exit(3);
}
else{
system(input);
}
}
if(pid == 0){
return 0;
}
Respuesta1
pid==0 bloquea su script en un bucle infinito, ya que pid=0 es una ecuación, pero pid==0 es booleano y siempre FALSO.