X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fthread.h;h=76a2d8436f91b9fa957856835c39a4f211b151df;hp=d24b65dc7700a1a33b492c103b01a1a4527f0093;hb=91427c824280d71eaf27f39a4bfdd2188cbdb4ec;hpb=b8c5ea869ca80338f8b2fa6815fc92349b889750 diff --git a/src/thread.h b/src/thread.h index d24b65dc..76a2d843 100644 --- a/src/thread.h +++ b/src/thread.h @@ -102,6 +102,10 @@ struct Thread { bool is_available_to(Thread* master) const; void wait_for(volatile const bool& b); + template + Value split(Position& pos, Search::Stack* ss, Value alpha, Value beta, Value bestValue, Move* bestMove, + Depth depth, Move threatMove, int moveCount, MovePicker& mp, int nodeType); + SplitPoint splitPoints[MAX_SPLITPOINTS_PER_THREAD]; Material::Table materialTable; Endgames endgames; @@ -155,19 +159,15 @@ public: void start_thinking(const Position&, const Search::LimitsType&, const std::vector&, Search::StateStackPtr&); - template - Value split(Position& pos, Search::Stack* ss, Value alpha, Value beta, Value bestValue, Move* bestMove, - Depth depth, Move threatMove, int moveCount, MovePicker& mp, int nodeType); - bool sleepWhileIdle; Depth minimumSplitDepth; + size_t maxThreadsPerSplitPoint; Mutex mutex; ConditionVariable sleepCondition; private: std::vector threads; TimerThread* timer; - size_t maxThreadsPerSplitPoint; }; extern ThreadPool Threads;