Avishai Ish-Shalom (@nukemberg)
By definition, exceptions are not normal
Either you thought it could happen, or you didn't
# cv = threading.Condition()
cv.acquire()
worker = Worker()
logger.debug("Starting work")
try:
worker.do_something()
finally:
cv.notify_all()