Luego de mucho batallar ya dimos con la respuesta de esta inconveniente que tantos usuarios de este sitio web han presentado. Si tienes alguna información que aportar no dejes de aportar tu información.
Solución:
Sintaxis de waitpid()
:
pid_t waitpid(pid_t pid, int *status, int options);
El valor de pid
puede ser:
- < -1: espere cualquier proceso secundario cuyo ID de grupo de proceso sea igual al valor absoluto de
pid
. - -1: Espere por cualquier proceso secundario.
- 0: espere cualquier proceso secundario cuyo ID de grupo de procesos sea igual al del proceso que realiza la llamada.
- > 0: espere al niño cuyo ID de proceso sea igual al valor de
pid
.
El valor de las opciones es un OR de cero o más de las siguientes constantes:
WNOHANG
: Regrese inmediatamente si ningún niño ha salido.WUNTRACED
: Regresar también si ha parado un niño. Se proporciona el estado de los niños rastreados que se han detenido incluso si no se especifica esta opción.WCONTINUED
: También devolver si un niño detenido ha sido reanudado por entrega deSIGCONT
.
Para obtener más ayuda, utilice man waitpid
.
la sintaxis es
pid_t waitpid(pid_t pid, int *statusPtr, int options);
1.donde pid es el proceso del niño que debe esperar.
2.statusPtr es un puntero a la ubicación donde se almacenará la información de estado para el proceso de terminación.
3. especifica acciones opcionales para la función waitpid. Se puede especificar cualquiera de los siguientes indicadores de opción, o se pueden combinar con un operador OR inclusivo bit a bit:
WNOHANG WUNTRAZED WCONTINUACIÓN
Si tiene éxito, waitpid devuelve el ID del proceso terminado cuyo estado se informó. Si no tiene éxito, se devuelve un -1.
beneficios sobre la espera
1.Waitpid se puede usar cuando tiene más de un hijo para el proceso y desea esperar a que un hijo en particular complete su ejecución antes de que el padre se reanude.
2.waitpid admite el control de trabajos
3. Admite el no bloqueo del proceso principal.
Aquí puedes ver las comentarios y valoraciones de los usuarios
Recuerda dar difusión a este artículo si te valió la pena.