Torsten Bronger wrote:
> Peter Hansen <[EMAIL PROTECTED]> writes:
>>What's your use case for del?
> 
> Every instance represents a "session" to a measurement instrument.
> After the instance is deleted, the session should be closed to free
> resources.

You mean like GPIB devices?  We've written a lot of software that talks 
to instruments, as well as pumps, motors, and sensors of all kinds.  I 
haven't even needed to "free resources", other than by closing a serial 
port, for example.  Such simple operations don't require the use of 
__del__ and can easily be done with simple .close() type calls as the 
application shuts itself down or finishes a test sequence or other 
operation.

Use of __del__ is, in my opinion, a bit of a crutch (meaning it seems to 
make life easier, but then you start relying on it and find it hard to 
do without).  Given that it isn't really reliable in non-trivial 
situations, I'd recommend pretending __del__ does not exist and 
restructuring your system to close these sessions explicitly, under your 
direct control, at the appropriate point.  This has worked very well for 
us so far.

-Peter
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to