Re: Dudas sobre concurrencia: ¿fork o threads?

Miguel Araujo muchochini en gmail.com
Mie Feb 13 21:58:28 CET 2008


Gracias por la rápida respuesta. Ahora sí que lo tengo claro. Debido a que
aprendí a programar concurrencia con ADA en su día, he sufrido mucho los
hilos y creo que me resultará más fácil está opción que centrar la gestión
del shm en un proceso.

Muchas gracias por las explicaciones Rafael y un saludo

         Miguel Araujo


El día 13/02/08, Rafael Villar Burke <pachi en rvburke.com> escribió:
>
> Miguel Araujo wrote:
> > Muchas gracias por tu explicación Rafael, me ha quedado bien claro el
> > asunto. Según te entiendo en Linux (sistema en el que programo python)
> hago
> > un fork crea dos procesos pesados (no en el sentido en que le cueste
> > crearlos, sino en que son 2 procesos distintos que no comparten memoria
> > ¿no?), si necesito que se comuniquen usaría sockets, pipes con o sin
> nombre,
> > ficheros con lock....
> >
> Exacto.
> > Como yo quiero que entre los threads haya memoria compartida tendré que
> usar
> > semáforos y la memoria compartida, que por lo que he entendido viene por
> > defecto ¿no? Pero esto tiene que controlarlo el programador con la
> > consecuente sencillez de error ¿correcto?
> >
> Bueno, en lugar de hilos propiamente dichos podrías seguir usando
> procesos independientes, con uno de ellos que gestiona los  demás
> procesos y los semáforos, además de proporcionar explícitamente memoria
> compartida (shm). Lo que desconozco completamente son las
> desventajas/ventajas prácticas de esta aproximación frente al uso de
> threads, pero me imagino que será similar, ya que el problema de
> controlar el acceso concurrente a la memoria compartida es similar al de
> los hilos.
>
> Saludos,
>
> Rafael Villar Burke
> _______________________________________________
> Lista de correo Python-es
> http://listas.aditel.org/listinfo/python-es
> FAQ: http://listas.aditel.org/faqpyes
>
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es