ck_epoch_begin man page

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/

Referenced By

ck_epoch_barrier(3), ck_epoch_call(3), ck_epoch_end(3), ck_epoch_init(3), ck_epoch_poll(3), ck_epoch_reclaim(3), ck_epoch_recycle(3), ck_epoch_register(3), ck_epoch_synchronize(3), ck_epoch_unregister(3).

September 2, 2012