[visionegg] LPT things not being garbage collected
- From: Tony Arkles <tony@xxxxxxxxx>
- To: visionegg@xxxxxxxxxxxxx
- Date: Mon, 14 Aug 2006 17:55:49 -0600
Hi!
Another one here, although this one is a bit trickier.
Daq.Channel.__init__ creates a reference loop. In the line
self.constant_parameters.functionality.channel = self, we end up with
an LPTOutput object that refers to the Daq.Channel, which refers to
the LPTOutput. Normally, the garbage collector has no problem with
loops like that, unless an object in the loop has a __del__ method,
which the LPTOutput class does.
Is there a reason for that loop like that? I don't want to just
comment it out in case there's a reason somewhere for it. The way I
have things set up right now, these objects are created at the
beginning of each stimulus presentation, and it slowly leaks memory.
I'm just curious for some input about where this should be fixed.
I'm reluctant to add a __del__ method to the Channel class as well,
but that might be necessary.
Cheers,
Tony
======================================
The Vision Egg mailing list
Archives: http://www.freelists.org/archives/visionegg
Website: http://www.visionegg.org/mailinglist.html
Other related posts:
- » [visionegg] LPT things not being garbage collected