Wow I really bungled that up.

Forgot to wake threads after telling them to wait. Right, sleep.