Xiangiqgame
AI engine for Xiangqi
Loading...
Searching...
No Matches
boardstate::TranspositionTablePruner< KeyType, NumConfKeys > Class Template Reference

Removes old entries from TranspositionTable to prevent excessive memory use. More...

#include <zobrist.hpp>

Collaboration diagram for boardstate::TranspositionTablePruner< KeyType, NumConfKeys >:
Collaboration graph

Public Member Functions

 TranspositionTablePruner (const TranspositionTablePruner &)=delete
 
TranspositionTablePruneroperator= (const TranspositionTablePruner &)=delete
 
 TranspositionTablePruner (TranspositionTable< KeyType, NumConfKeys > &tr_table, TranspositionTableGuard &tr_table_guard)
 
 ~TranspositionTablePruner ()
 
void Start ()
 
void Stop ()
 

Private Member Functions

void UnsafePruneEntry ()
 
void ThreadSafePruneEntry ()
 
void RepeatedlyPrune ()
 

Private Attributes

TranspositionTable< KeyType, NumConfKeys > & tr_table_
 
TranspositionTableGuardtr_table_guard_
 
std::thread pruning_thread_
 
std::atomic< bool > keep_running_
 

Detailed Description

template<typename KeyType, size_t NumConfKeys>
class boardstate::TranspositionTablePruner< KeyType, NumConfKeys >

Removes old entries from TranspositionTable to prevent excessive memory use.

Definition at line 358 of file zobrist.hpp.

Constructor & Destructor Documentation

◆ TranspositionTablePruner() [1/2]

template<typename KeyType , size_t NumConfKeys>
boardstate::TranspositionTablePruner< KeyType, NumConfKeys >::TranspositionTablePruner ( const TranspositionTablePruner< KeyType, NumConfKeys > &  )
delete

◆ TranspositionTablePruner() [2/2]

template<typename KeyType , size_t NumConfKeys>
boardstate::TranspositionTablePruner< KeyType, NumConfKeys >::TranspositionTablePruner ( TranspositionTable< KeyType, NumConfKeys > &  tr_table,
TranspositionTableGuard tr_table_guard 
)
inline

Definition at line 368 of file zobrist.hpp.

◆ ~TranspositionTablePruner()

template<typename KeyType , size_t NumConfKeys>
boardstate::TranspositionTablePruner< KeyType, NumConfKeys >::~TranspositionTablePruner ( )
inline

Definition at line 377 of file zobrist.hpp.

Member Function Documentation

◆ operator=()

template<typename KeyType , size_t NumConfKeys>
TranspositionTablePruner & boardstate::TranspositionTablePruner< KeyType, NumConfKeys >::operator= ( const TranspositionTablePruner< KeyType, NumConfKeys > &  )
delete

◆ RepeatedlyPrune()

template<typename KeyType , size_t NumConfKeys>
void boardstate::TranspositionTablePruner< KeyType, NumConfKeys >::RepeatedlyPrune ( )
inlineprivate

Definition at line 403 of file zobrist.hpp.

◆ Start()

template<typename KeyType , size_t NumConfKeys>
void boardstate::TranspositionTablePruner< KeyType, NumConfKeys >::Start ( )
inline

Definition at line 383 of file zobrist.hpp.

◆ Stop()

template<typename KeyType , size_t NumConfKeys>
void boardstate::TranspositionTablePruner< KeyType, NumConfKeys >::Stop ( )
inline

Definition at line 387 of file zobrist.hpp.

◆ ThreadSafePruneEntry()

template<typename KeyType , size_t NumConfKeys>
void boardstate::TranspositionTablePruner< KeyType, NumConfKeys >::ThreadSafePruneEntry ( )
inlineprivate

Definition at line 397 of file zobrist.hpp.

◆ UnsafePruneEntry()

template<typename KeyType , size_t NumConfKeys>
void boardstate::TranspositionTablePruner< KeyType, NumConfKeys >::UnsafePruneEntry ( )
inlineprivate

Definition at line 392 of file zobrist.hpp.

Member Data Documentation

◆ keep_running_

template<typename KeyType , size_t NumConfKeys>
std::atomic<bool> boardstate::TranspositionTablePruner< KeyType, NumConfKeys >::keep_running_
private

Definition at line 362 of file zobrist.hpp.

◆ pruning_thread_

template<typename KeyType , size_t NumConfKeys>
std::thread boardstate::TranspositionTablePruner< KeyType, NumConfKeys >::pruning_thread_
private

Definition at line 361 of file zobrist.hpp.

◆ tr_table_

template<typename KeyType , size_t NumConfKeys>
TranspositionTable<KeyType, NumConfKeys>& boardstate::TranspositionTablePruner< KeyType, NumConfKeys >::tr_table_
private

Definition at line 359 of file zobrist.hpp.

◆ tr_table_guard_

template<typename KeyType , size_t NumConfKeys>
TranspositionTableGuard& boardstate::TranspositionTablePruner< KeyType, NumConfKeys >::tr_table_guard_
private

Definition at line 360 of file zobrist.hpp.


The documentation for this class was generated from the following file: