Tino Dai schreef: > How I have it now: > > semaA = threading.semaphore() > > class nameA: > def __init__(self): > <do some stuff> > > def run(self): > <do some stuff> > semaA.release() > > class nameB: > def __init__(self): > <do some stuff> > > def run(self): > semaA.acquire() > <do some stuff> > > > Does that make sense. Or is there a better way?
I think it's better to do something like: class nameA: def __init__(self, sema): self.sema = sema <other stuff> def run(self): <do some stuff> self.sema.release() class nameB: def __init__(self, sema): self.sema = sema <other stuff> def run(self): self.sema.acquire() <do some stuff> Then where you create instances of those classes: sema = threading.semaphore() a = nameA(sema) b = nameB(sema) Maybe you don't even need the semaphore at all: have a look at Queue.Queue, it might do exactly what you need. -- If I have been able to see further, it was only because I stood on the shoulders of giants. -- Isaac Newton Roel Schroeven _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor