X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fthread.cpp;h=d674c3ab3f9872635eddd77c7b2d89c65e31cfd9;hb=dda7de17e74d7e8;hp=fe19331440c5de057b71e9f8ba88b1c49845481e;hpb=869c9244101ce5c6090fff5aeaee52142a572b53;p=stockfish diff --git a/src/thread.cpp b/src/thread.cpp index fe193314..d674c3ab 100644 --- a/src/thread.cpp +++ b/src/thread.cpp @@ -80,7 +80,8 @@ void Thread::timer_loop() { while (!do_exit) { mutex.lock(); - sleepCondition.wait_for(mutex, maxPly ? maxPly : INT_MAX); + while (!maxPly && !do_exit) + sleepCondition.wait_for(mutex, maxPly ? maxPly : INT_MAX); mutex.unlock(); check_time(); } @@ -237,16 +238,6 @@ bool ThreadPool::available_slave_exists(Thread* master) const { } -// set_timer() is used to set the timer to trigger after msec milliseconds. -// If msec is 0 then timer is stopped. - -void ThreadPool::set_timer(int msec) { - - timer->maxPly = msec; - timer->notify_one(); // Wake up and restart the timer -} - - // split() does the actual work of distributing the work at a node between // several available threads. If it does not succeed in splitting the node // (because no idle threads are available, or because we have no unused split