DragonFly On-Line Manual Pages
CK_EPOCH_POLL(3) DragonFly Library Functions Manual CK_EPOCH_POLL(3)
NAME
ck_epoch_poll - non-blocking poll of epoch object for dispatch cycles
LIBRARY
Concurrency Kit (libck, -lck)
SYNOPSIS
#include <ck_epoch.h>
bool
ck_epoch_poll(ck_epoch_t *epoch, ck_epoch_record_t *record);
DESCRIPTION
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.
RETURN VALUES
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.
ERRORS
Behavior is undefined if the object pointed to by epoch is not a valid
epoch object. The object pointed to by record must have been previously
registered via ck_epoch_register(3).
SEE ALSO
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