X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=src%2Fthread.h;h=dc8418dcca5795a06f6b0a7f90244c1cca34b497;hb=86347100a5c1113e9306d63a16cde2866839373b;hp=d3dd18679b2a2b9b143caee5cfab79d166094aea;hpb=cca34e234cc98ed4b61e75a25f8cd0d917c2a3fa;p=stockfish diff --git a/src/thread.h b/src/thread.h index d3dd1867..dc8418dc 100644 --- a/src/thread.h +++ b/src/thread.h @@ -143,20 +143,21 @@ struct MainThread : public Thread { }; struct TimerThread : public ThreadBase { - TimerThread() : msec(0) {} + TimerThread() : run(false) {} virtual void idle_loop(); - int msec; + bool run; + static const int Resolution = 5; // msec between two check_time() calls }; /// ThreadPool struct handles all the threads related stuff like init, starting, -/// parking and, the most important, launching a slave thread at a split point. +/// parking and, most importantly, launching a slave thread at a split point. /// All the access to shared thread data is done through this class. struct ThreadPool : public std::vector { void init(); // No c'tor and d'tor, threads rely on globals that should - void exit(); // be initialized and valid during the whole thread lifetime. + void exit(); // be initialized and are valid during the whole thread lifetime. MainThread* main() { return static_cast((*this)[0]); } void read_uci_options();