Sleep

It seems to work (almost?) correctly (or even totally correctly) when
the sleep time is sufficiently large (presumably so that all the
calculations done by each thread have enough time to complete)