The **t->create();** above will create the conditions for the **throttle->get_or_fail(1)** to block. However, it does so in a separate thread. The loop is waiting for the thread to get to the point where it blocks. It would be nice to get rid of the loop but I could not figure out how to do it without modifying the Throttle.cc code.