[Py-MAD] A propósito de mi charla sobre "memory leaks"

Marcos Perez marcos.pe at gmail.com
Mon Dec 23 09:30:32 CET 2013


Por echar más leña al fuego, yo he sufrido memory leaks en IronPython. No
funciona "idénticamente" a Python, pero se pueden arreglar algunas cosas
por configuración...


El 23 de diciembre de 2013, 1:04, Jesus Cea <jcea at jcea.es> escribió:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> He comentado este tema porque salió precisamente en mi charla de
> "Memory Leaks", Andrey hizo un comentario al respecto, y lo investigué
> un poco. Las cosas mejorarán bastante en Python 3.4, en cuanto a
> ciclos, leaks, etc. Entre este PEP y el módulo "tracemalloc"...
>
> Más, abajo...
>
> On 21/12/13 07:42, J. Javier Maestro wrote:
> > Así que sí, __del__ será seguro y se arreglará y/o romperá
> > (potencialmente) mucho código Python existente.
>
> __del__ se llama cuando se borra un objeto y éste no forma parte de un
> ciclo. Eso de siempre.
>
> La diferencia ahora es que también se llamará cuando forma parte de
> ciclos. Pero solo se llama cuando ese objeto es "basura". Si algún
> programa falla por eso, quiero verlo, porque la únicas referencias que
> puede haber a ese objeto son, precisamente, otros objetos de su ciclo,
> Y TODO él es basura.
>
> El problema que teníamos antes era que llamar a un "__del__" cuando
> hay un ciclo es problemático porque... ¿y si llamamos al "__del__"
> cuando ya hemos eliminado la mitad de los objetos del ciclo, y ese
> método intenta acceder a ellos?. Y si tenemos "__del__" en varios
> objetos del ciclo, ¿en qué orden se llaman?.
>
> Lo que se hará en Python 3.4 es llamar primero a todos los "__del__"
> del ciclo, sin haber borrado nada antes, y LUEGO, revisar que los
> objetos siguen siendo basura (no se han "resucitado") y, si es así,
> eliminar los objetos "de verdad".
>
> A mí me parece bastante seguro, y si algo se rompe, será código
> verdaderamente patológico que quiero ver. O, tal vez, no ver :-).
>
> - --
> Jesús Cea Avión                         _/_/      _/_/_/        _/_/_/
> jcea at jcea.es - http://www.jcea.es/     _/_/    _/_/  _/_/    _/_/  _/_/
> Twitter: @jcea                        _/_/    _/_/          _/_/_/_/_/
> jabber / xmpp:jcea at jabber.org  _/_/  _/_/    _/_/          _/_/  _/_/
> "Things are not so easy"      _/_/  _/_/    _/_/  _/_/    _/_/  _/_/
> "My name is Dump, Core Dump"   _/_/_/        _/_/_/      _/_/  _/_/
> "El amor es poner tu felicidad en la felicidad de otro" - Leibniz
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.15 (GNU/Linux)
> Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
>
> iQCVAwUBUrd98Jlgi5GaxT1NAQJyQAP+PJOFTUNxuWomfMYncT3jfdVGQr+tw+yk
> 0goPTPr3iex4lQeG7OOyQt7XxKzAfyT9+MVE+7MA8b+Rn4fB1wg9L/ZAY9yv1bKL
> dl7xVMRDt3+XtDzuPiGvRF40ik4cpgrBddaWuHkgOA/wCBOPCvmEHh1muYoWi9zq
> 3wR1Pitkik4=
> =KbuH
> -----END PGP SIGNATURE-----
> _______________________________________________
> Madrid mailing list
> Madrid at lists.es.python.org
> https://lists.es.python.org/listinfo/madrid
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.es.python.org/pipermail/madrid/attachments/20131223/89ad160e/attachment.html>


More information about the Madrid mailing list