[Python-Dev] Class destructor

Phillip J. Eby pje at telecommunity.com
Wed Feb 28 17:40:53 CET 2007


At 09:00 AM 2/28/2007 +0000, Nick Maclaren wrote:
>I am gradually making progress with my binary floating-point software,
>but have had to rewrite several times as I have forgotten most of the
>details of how to do it!  After 30 years, I can't say I am surprised.
>
>But I need to clean up workspace when a class (not object) is
>deallocated.  I can't easily use attributes, as people suggested,
>because there is no anonymous storage built-in type.  I could subvert
>one of the existing storage types (buffer, string etc.), but that is
>unclean.  And I could write one, but that is excessive.
>
>So far, I have been unable to track down how to get something called
>when a class is destroyed.  The obvious attempts all didn't work, in
>a variety of ways.  Surely there must be a method?  This could be in
>either Python or C.

Have you tried a PyCObject?  This is pretty much what they're for:

http://www.python.org/doc/1.5.2/api/cObjects.html

And yes, they're still around today:

http://www.python.org/doc/2.5/api/cObjects.html

(with an extra PyCObject_SetVoidPtr API added in in 2.4).



More information about the Python-Dev mailing list