On 01:14 pm, [email protected] wrote:
>Sorry, I don't think I understand the example either---looks to me like
>you're reimplementing a semaphore. Stephen's right about run().
It sounds like (the other) Jason would be happy with run, except he also
wants to do something extra each time the lock/semaphore is taken and
released. DeferredSemaphore (and the other similar classes) don't
really offer this functionality. You just have to work that logic into
the function you run. It's possible something like this would be nicer
than reimplementing the acquire/release logic:
def run(sem, f):
def before():
doAcquire()
return f()
d = sem.run(before)
def after(passthrough):
doRelease()
return passthrough
d.addBoth(after)
return d
Jean-Paul
_______________________________________________
Twisted-Python mailing list
[email protected]
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python