[Python-es] Construir instancia a partir de la dirección
Pepe Aracil
pepe en diselpro.com
Mar Mar 23 17:12:18 CET 2010
Hola.
Efectivamente para probar si una instancia muere de verdad, lo
que hago es crear una weakref hacia esa instancia y posteriormente
comprobar si al desreferenciarla devuelve None.
Saludos.
lasizoillo escribió:
> El día 23 de marzo de 2010 14:49, Arnau Sanchez <pyarnau en gmail.com> escribió:
>
>> On 23/03/10 14:11, Pepe Aracil wrote:
>>
>>
>>> A partir de un texto como por ejemplo este este:
>>> <mod_network.Network instance at 0x9013b6c>
>>>
>>> ¿ Hay alguna forma de reconstruir una referencia a la instancia
>>> partiendo de la dirección 0x9013b6c ?
>>>
>> ¿Y no puedes mantener un diccionario con pares (id, obj) o algo así?
>>
>>
>
> Supongo que mantener dependencias no es muy util para comprobar si se
> ha producido un leak. Pero tal vez con...
>
> http://docs.python.org/library/weakref.html#module-weakref
>
>
>
>> En cualquier caso: nunca lo había probado, pero esto parece funcionar:
>>
>>
>>>>> import _ctypes
>>>>> s = "hola"
>>>>> _ctypes.PyObj_FromPtr(id(s))
>>>>>
>> 'hola'
>>
>
> Curioso
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
Más información sobre la lista de distribución Python-es