[Previo por Fecha] [Siguiente por Fecha] [Previo por Hilo] [Siguiente por Hilo]
[Hilos de Discusión] [Fecha] [Tema] [Autor]Yo tuve un problema parecido con Python. Lo que pasaba era que no estaba cerrando los descriptores de archivos correctos. ¿Por qué no revisas eso? On Wed, 5 Jan 2000, Gunnar Wolf wrote: > Estoy trabajando con un problema que espero me puedan ayudar a resolver: > Recientemente, añadi a mi proyectito (wpm) el poder atender mas de una > peticion simultanea, por medio de un fork() cada que recibe una conexion. > Obviamente, el proceso padre cierra la conexion y sigue esperando, > mientras que el proceso hijo atiende a dicha conexion y, al terminar esta, > muere. Sin embargo, el proceso queda como zombie, y nunca muere. No se si > haga falta implementar un codigo de limpieza en el padre, ni como hacerlo. > > El pedazo de codigo relevante es: > > while ($client = $server->accept()) { > die "Can't fork!: $@" if (!defined ($child=fork())); > if ($child == 0) { > # We are the child process after a fork. We > # continue doing our stuff... > (...) > while ($string=<$client>) { > (...) > } > close $client; > exit 0; > } else { > # After the fork, we are the parent > # process, so we close the socket and > # leave it just for the child. We can > # now go back to answer additional queries. > close $client; > } > } > > A alguien se le ocurre lo que puede estar pasando? > > ------------------------------------------------------------------- > Gunnar Wolf gwolf en asc unam mx > Universidad Nacional Autónoma de México, Campus Iztacala > Jefatura de Sección de Admon. de Sistemas y Telecomunicaciones > Area de Seguridad en Computo - DCI - DGSCA - UNAM > ------------------------------------------------------------------- > > > -- > Para desuscribirse, mande correo a: ayuda-unsubscribe en linux org mx > Para comandos adicionales, envíelo a: ayuda-help en linux org mx > Luis Rodrigo Gallardo Cruz -----BEGIN GEEK CODE BLOCK----- GM/CS d- s-: a-- C++ UL+>++ P L++>+++ E W+ ?o K- !w ?V PS+ PE- Y+ t+@ ?5 X(+) R+ tv b++ D+ G e+>++ h! r++ y+ ------END GEEK CODE BLOCK------ -- Para desuscribirse, mande correo a: ayuda-unsubscribe en linux org mx Para comandos adicionales, envíelo a: ayuda-help en linux org mx