void sleepUntil( const Timestamp& t, int N, double rate ) { sleepUntil( t + rate*N ); }
void Thread::sleep(double duration) { sleepUntil(System::now() + duration); }
void Client::sync(int perSecond) { time = time + seconds(1) / perSecond; sleepUntil(time + timeShift); }
void Server::sync(int perSecond) { time = time + seconds(1) / perSecond; sleepUntil(time); }
void sleep(){ sleepUntil(sleepSecs, pins, pinsN); }
void sleepFor(const TickClock::duration duration) { sleepUntil(TickClock::now() + duration + TickClock::duration{1}); }