Blog de Javier Smaldone

Todos los días se aprende algo viejo

Comentarios recientes

  • Raul en Si esto no es innovación... (perdón, Microsoft)
  • ruben en Genial trampa para mosquitos
  • maria en Fibertel, una porquería
  • gabriel en Fibertel y su proxy transparente
  • Pedro López Azcuénaga en Fibertel y su proxy transparente

8 comentarios

Alan dijo:
7 de Noviembre de 2006 a las 14:05  

Aunque soy aún un novato en el mundo de la programación, este acercamiento a la programación concurrente, me ha resultado más que entretenido. La verdad muy bien explicados estos dos últimos artículos.
Espero con ansias las próximas entregas.

Saludos

Mike dijo:
27 de Enero de 2007 a las 14:25  

Hola, tu articulo esta muy bien, me esta siendo de mucha ayuda, aunque perl nunca me ha gustado mucho.

Para mi proyecto tengo que usar C y me he encontrado una librería para usar los sockets mas fácilmente, tal vez le sea util a alguien mas.

Esta en http://solarsockets.solar-opensource.com

Les hace falta algo de documentación pero la libreria esta muy bien.

Felicidades por tu articulo.

Fermat dijo:
4 de Mayo de 2007 a las 18:45  

Hola Javier,

Lo primero, muy bueno tu serie de artículos.

Me surge un problema con un ejemplo parecido a este, ya que según van terminando los hilos, la memoria no se libera… con lo que es cuestión de tiempo que el sistema operativo (en mi caso Fedora Linux) mate el proceso con un “Out of memory!”.

¿Es imprescindible hacer una “join” al finalizar el hilo? Es que me he dado cuenta que si lo “desatas” (detach), no surge este problema.

Gracias,
Fermat.

PD: Varias veces antes he leído artículos tuyos, y me parece que haces una encomiable tarea de divulgación.

Fermat dijo:
8 de Mayo de 2007 a las 19:44  

Confirmado, es imprescindible ejecutar una “join” sobre los hilos que han terminado (y que no hemos “independizado” mediante el método “detach”).

Curiosamente, versiones anteriores del módulo “threads” no implementa funciones como “is_joinable” o “threads::joinable” (este último para sacar directamente la lista de los hilos que han terminado y no hemos unido). ¡No sé cómo se controlaría antes estas cosas!

Espero que sirva esta respuesta (cantidad de veces me ha salvado leer la respuesta a una pregunta que yo tenía, y que busqué en google xD).

Saludos,
Fermat.

Josu dijo:
9 de Mayo de 2007 a las 11:08  

Se agredece, me ha sido muy útil.
Pero tengo un problema, no tengo el módulo threads de perl, cómo se instala?
Al ejecutar el servidor me arroja este error:

“This Perl hasn’t been configured and built properly for the threads
module to work. (The ‘useithreads’ configuration option hasn’t been used.)

Having threads support requires all of Perl and all of the XS modules in
the Perl installation to be rebuilt, it is not just a question of adding
the threads module. (In other words, threaded and non-threaded Perls
are binary incompatible.)

If you want to the use the threads module, please contact the people
who built your Perl.”

Pingback & Trackback
mygif
7 de Noviembre de 2006 a las 15:20  

Programación con sockets y concurrencia (2da. parte)…

Segunda parte del tutorial sobre programación usando sockets y concurrencia. En esta oportunidad, se desarrolla un servidor concurrente usando múltiples procesos y otro usando threads. Incluye la tercera parte, de regalo, con un ejemplo en PHP para s…

mygif
19 de Noviembre de 2006 a las 2:06  

[...] Segunda parte: Implementación de un servidor concurrente mediante procesos y mediante threads. [...]

mygif
6 de Abril de 2008 a las 22:23  

[...] : Programación para redes y concurrencia 1. Programación para redes y concurrencia 2. Programación para redes y concurrencia 3. Programación para redes y concurrencia 4. [...]

Artículo al azar

Deja tu comentario: