[Python-Dev] Class destructor (original) (raw)

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