> self._doneevents= {}
is extraneous.
> id, fun, ar, kw= self.get()
done, fun, ar, kw= self.get()
suffices.
> def _draintilclose( conn, understandfun= None ):
> if None is not understandfun:
> understandfun( _curmsg )
yield _curmsg
is an interesti
#interactive run -i
import threading
import Queue
import functools
class GenThread( threading.Thread, Queue.Queue ):
_taskid= 0
def __init__( self, *ar, **kw ):
threading.Thread.__init__( self, *ar, **kw )
Queue.Queue.__init__( self )
self.setDaemon( True )
s