From: Don C. <ch...@st...> - 2006-07-11 13:11:50
|
I tried the "_close_fetcher" solution, but it has caused other problems. Specifically, it throws off the lock count and I end up getting: AssertionError: release() of un-acquire()d lock What has been working for me is simply clearing the command once the lock count reaches zero. Here is what my version of _FetchLazy._unlock looks like: def _unlock(self): self._lock_count = self._lock_count - 1 _ctx.debug_msg('_unlock: count -> %d\n' % self._lock_count) #!!! Added by DRC: Once there are no more locks, clear the command if self._lock_count == 0: status = self._cmd.ct_cancel(CS_CANCEL_ALL) #!!! self._owner._unlock() -- +++++++++++++++++++++++++++++++++ Don Chance Computer Sciences Corp. Space Telescope Science Institute 3700 San Martin Drive Baltimore, MD 21218 410-338-4941 +++++++++++++++++++++++++++++++++ |