/usr/share/pyshared/mx/Proxy/mxProxy/weakreftest.py is in python-egenix-mxproxy 3.2.1-1.1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | import sys
import mx.Proxy
class Object:
def __init__(self, id):
self.id = id
def __del__(self):
print self.id, 'deleted'
def __repr__(self):
return '<Object %s at %d (0x%x)>' % (self.id, id(self), id(self))
def test():
x = Object('first')
x.y = Object('second')
x.y.x = mx.Proxy.WeakProxy(x)
test()
# if I uncomment the following, everything works as expected, which suggests
# to me that either the WeakReferences dictionary is not getting GC'd
#y = x.y
#del x
#print y.x.id
|