Advertisement
rfmonk

weakref_ref_callback.py

Jan 13th, 2014
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.40 KB | None | 0 0
  1. #!/usr/bin/env python
  2.  
  3.  
  4. import weakref
  5.  
  6.  
  7. class ExpensiveObject(object):
  8.     def __del__(self):
  9.         print '(Deleting %s)' % self
  10.  
  11.  
  12. def callback(reference):
  13.     """Invoked when referenced object is deleted"""
  14.     print 'callback(', reference, ')'
  15.  
  16. obj = ExpensiveObject()
  17. r = weakref.ref(obj, callback)
  18.  
  19. print 'obj:', obj
  20. print 'ref:', r
  21. print 'r():', r()
  22.  
  23. print 'deleting obj'
  24. del obj
  25. print 'r():', r()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement