diff --git a/src/thread.cpp b/src/thread.cpp index d674c3ab..1f5dc823 100644 --- a/src/thread.cpp +++ b/src/thread.cpp @@ -49,7 +49,8 @@ Thread::Thread(Fn fn) : splitPoints() { curSplitPoint = NULL; start_fn = fn; idx = Threads.size(); - do_sleep = true; + + do_sleep = (fn != &Thread::main_loop); // Avoid a race with start_searching() if (!thread_create(handle, start_routine, this)) {