[P]El pid de un proceso hijo [Aun más Largo] [ERRATA]

Ernesto Hernandez-Novich emhn at telcel.net.ve
Sun Jun 25 10:32:04 CDT 2000


Hay un error en el programa testing.pl que permite que los programas hijos
colgados queden corriendo. Para corregirlo, primero es necesario capturar el PID
del proceso hijo, para eso

> $pid = open2(*RESULTADOS,*PARAMETROS,$programa)    # Magia negra explicada

Luego, en la rutina que maneja la excepción del timeout, enviar el kill
-9 al proceso hijo puesto que excedió el tiempo de ejecución, para eso

>  if ($@) {  # Ocurrió alguna excepción?
>    if ($@ =~ /timeout/) {       # Se excedió en tiempo
>      print C "$caso, Excedido en tiempo\n";   # Indicar el evento
>      close(PARAMETROS);         # Estos archivos aún están abiertos, así
>      close(RESULTADOS);         # que los cierro (el programa hijo morirá)
>      kill(9,$pid);
--
Ernesto Hernández-Novich - Running Linux 2.2.14 - Unix: Live free or die!
One thing is to be the best, and another is to be the most popular.
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCS d+(-) s+: a C+++$ UBLAVHIOSC++++$ P++++$ L+++$ E- W+ N++ ?o ?K w--- O- M- V
PS+ PE Y+ PGP>++ t+ 5 X+ R* tv+ b++ DI+++$ D++ G>++ e++ h+ r+ y++
-----END GEEK CODE BLOCK-----
Para suspender la suscripción a esta lista, favor enviar un e-mail a
<majordomo at pm.org> colocando "UNSUBSCRIBE caracas-pm-list"
en el cuerpo.



More information about the caracas-pm mailing list