xenium
xenium::policy::scan_frequency< Value > Struct Template Reference

Policy to configure the scan frequency for generic_epoch_based reclamation. More...

#include <generic_epoch_based.hpp>

Detailed Description

template<std::size_t Value>
struct xenium::policy::scan_frequency< Value >

Policy to configure the scan frequency for generic_epoch_based reclamation.

This policy is used to define how often a thread should scan the epochs of the other threads in an attempt to update the global epoch. The value is based on the number of critical region entries; a scan is performed on every n'th critical region entry, since the thread last observed a new epoch, i.e., a higher number means scans are performed less frequently. A critical region entry corresponds to the creation of a stand-alone non-empty guard_ptr. Creation of other guard_ptrs while the thread is inside a critical region (i.e., some other non-empty guard_ptr already exists), do not count as critical region entries.

Template Parameters
Value