If you look at SocketReactor code
`
void SocketReactor::run()
{
...
if (nSockets == 0)
{
onIdle();
Thread::trySleep(_timeout.milliseconds());
}
`
It is trying to sleep just 'milliseconds' part of the span, not the whole configured time.
Shouldn't it be as below?
Thread::trySleep(_timeout.totalMilliseconds());