Provided by: libck-dev_0.6.0-1_amd64
ck_epoch_poll — non-blocking poll of epoch object for dispatch cycles
Concurrency Kit (libck, -lck)
#include <ck_epoch.h> bool ck_epoch_poll(ck_epoch_record_t *record);
The ck_epoch_poll(3) function will attempt to dispatch any functions associated with the object pointed to by epoch via ck_epoch_call(3) if deemed safe. This function is meant to be used in cases epoch reclamation cost must be amortized over time in a manner that does not affect caller progress.
This function will return true if at least one function was dispatched. This function will return false if it has determined not all threads have observed the latest generation of epoch-protected objects. Neither value indicates an error.
Behavior is undefined if the object pointed to by record has not have been previously registered via ck_epoch_register(3).
ck_epoch_init(3), ck_epoch_register(3), ck_epoch_unregister(3), ck_epoch_recycle(3), ck_epoch_synchronize(3), ck_epoch_reclaim(3), ck_epoch_barrier(3), ck_epoch_call(3), ck_epoch_begin(3), ck_epoch_end(3) Additional information available at http://concurrencykit.org/ September 2, 2012