Programa en ejecuciòn

Marcos Sánchez Provencio rapto en arrakis.es
Mie Ago 18 14:57:53 CEST 2004


Pues tenemos esto:
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/65203

que se pega con la multiplataforma. El caso es que me suena que esto ha
mejorado en versiones más modernas...

El mié, 18-08-2004 a las 13:54, Catalin Lungu escribió:
> Hola Jesús,
> 
> Si me dices como podría bloquear un fichero te estaría muy agradecido.
> Parece que un fichero lo pueden abrir varios procesos y el ultimo que lo
> escribe es lo que se queda guardado. Seguro hay alguna forma de hacerlo pero
> no la veo ahora. Esta si que seria la mejor forma de hacerlo.
> 
> Un saludo,
> Catalin Lungu
> 
> ----- Original Message ----- 
> From: "Jesus Cea Avion" <jcea en argo.es>
> To: "La lista de python en castellano" <python-es en aditel.org>
> Sent: Wednesday, August 18, 2004 12:37 PM
> Subject: Re: [Python-es] Programa en ejecuciòn
> 
> 
> > La existencia de ese fichero se comprueba en el arranque, y si existe
> > se comprueba que el proceso con ese id está en ejecución.
> 
> Dado que los PID se reutilizan, eso no es a prueba de bomba.
> 
> Opino que lo más sencillo y portable es simplemente intentar abrir un
> fichero en modo escritura e intentar ponerle un "lock" exclusivo encima.
> Si puedes, has ganado. Si no puedes, es que hay otro proceso ya lanzado.
> 
> Si el proceso original muere de forma "desordenada", el sistema
> operativo se encarga ya de eliminar el "lock", por lo que el sistema sí
> es a prueba de bomba.
> 
> Esto funciona incluso con sistemas de ficheros en red, si son lo
> bastante "decentes". En ese caso pueden existir ciertas complejidades
> muy interesantes, pero no creo que sea tu situación :)
> 
> Este sistema es "a prueba de bomba" y 100% portable.




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