CK_EPOCH_BEGIN(3)

NAME
ck_epoch_begin - begin epoch-protected segment of execution

LIBRARY
Concurrency Kit (libck, -lck)

SYNOPSIS
#include <ck_epoch.h>
void
ck_epoch_begin(ck_epoch_record_t *record, ck_epoch_section_t *section);

DESCRIPTION
The ck_epoch_begin(3) function will mark the beginning of an epoch-protected code section. An epoch-protected code section is delimited by a call to the ck_epoch_end(3) function. Though recursion is allowed for epoch-protected sections, recursive calls will be associated with the ck_epoch_begin(3) that is at the top of the call stack. If a section is passed, then recursion on a record will cause the epoch to be refreshed on entry of every protected section.

RETURN VALUES
This function has no return value.

ERRORS
The object pointed to by epoch must have been previously initiated via ck_epoch_init(3). 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_poll(3), ck_epoch_synchronize(3), ck_epoch_reclaim(3), ck_epoch_barrier(3), ck_epoch_call(3), ck_epoch_end(3)

Additional information available at http://concurrencykit.org/