[pyar] orden de destruccion de objetos

Ezequiel Brizuela [aka EHB or qlixed] qlixed en gmail.com
Jue Ago 20 19:34:41 ART 2015


Oh dio', reescribiendolo correctamente:

"Asegurarte de que cualquier clase hija Y de una clase padre X, dentro de
Y.__del__() llame explicitamente al padre X.__del__()."

Done.

~ QliXeD [ aka EHB ] ~


El 20 de agosto de 2015, 7:33 p. m., Ezequiel Brizuela [aka EHB or qlixed]<
qlixed en gmail.com> escribió:

> Para ambas versiones de python  (2/3) tenes que cumplir la misma premisa:
>
> "Asegurarte de que cualquier clase hija Y de un objeto X, dentro de
> Y.__del__() llames al padre X.__del__()."
>
> O sea:
>
> class X (object):
>   def __del__(self):
>     #Algunas cosas por aqui...
>     object.__del__();
>     #probablemente mas cosas por aca
>
> class Y(X):
>   def __del__(self):
>     # Cosas especificas de Y
>     X.__del__();
>     #MOAR STUFF de Y
>
> Con eso el garbage collector "lockea" correctamente los objetos a borrarse
> en el orden correcto... eso siempre y cuando no tengas una referencia
> circular dando vueltas.
> Mas info en:
> https://docs.python.org/2/reference/datamodel.html#object.__del__
> https://docs.python.org/3.4/reference/datamodel.html#object.__del__
> y:
>
> https://docs.python.org/2.7/faq/programming.html#my-class-defines-del-but-it-is-not-called-when-i-delete-the-object
>
> https://docs.python.org/3.4/faq/programming.html#my-class-defines-del-but-it-is-not-called-when-i-delete-the-object
>
> Y especifico de Py2:
> https://docs.python.org/2/using/cmdline.html#cmdoption-R
>
> En Py3 hubo una pequeña mejora respecto el uso de __del__, las refencias y
> ciclos, la podes ver en:
>
> https://www.python.org/dev/peps/pep-0442/
>
> Saludillos.
>
> ~ QliXeD [ aka EHB ] ~
>
>
> El 20 de agosto de 2015, 6:18 p. m., Daniel Britos<dbritos en gmail.com>
> escribió:
>
>> En el programa de simulación de redes
>> https://github.com/dbritos/Network-mesh-emulator para salir del programa
>> en el menú tengo la opción salir donde voy matando los objetos en un cierto
>> orden pero presionando en X de la ventana se van matando los objetos en
>> otro orden dando error  como puedo controlar el orden de destrucción de
>> objetos cada objeto tiene la función  __del__
>>
>> --
>>  Daniel Britos
>>
>>
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20150820/81043535/attachment.html>


More information about the pyar mailing list