CK_COHORT_PROTOTYPE - Man Page

define cohort type with specified lock types

Library

Concurrency Kit (libck, -lck)

Synopsis

#include <ck_cohort.h>

CK_COHORT_PROTOTYPE(COHORT_NAME cohort_name, TYPE global_lock_method, LOCK_FXN global_unlock_method, LOCK_FXN local_lock_method, LOCK_FXN local_unlock_method);

Description

The ck_cohort.h header file does not define any cohort types. Instead, the user must use the CK_COHORT_PROTOTYPE or CK_COHORT_TRYLOCK_PROTOTYPE(3) macros to define any types they want to use. They must use CK_COHORT_TRYLOCK_PROTOTYPE if they want their cohort type to support trylock operations. The CK_COHORT_PROTOTYPE macro takes the following arguments:

cohort_name : An identifier used for this cohort type. This will have to be passed to each of the other CK_COHORT macros.
global_lock_method : The method that should be called to acquire the global lock
global_unlock_method : The method that should be called to relinquish the global lock
local_lock_method : The method that should be called to acquire the local lock
local_unlock_method : The method that should be called to relinquish the local lock

Instances of the defined cohort type can be declared as:
CK_COHORT_INSTANCE(cohort_name) cohort;

See Also

ck_cohort(3), CK_COHORT_TRYLOCK_PROTOTYPE(3), CK_COHORT_INSTANCE(3), CK_COHORT_INITIALIZER(3), CK_COHORT_INIT(3), CK_COHORT_LOCK(3), CK_COHORT_UNLOCK(3), CK_COHORT_LOCKED(3), CK_COHORT_TRYLOCK(3),

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

Referenced By

ck_cohort(3), CK_COHORT_INIT(3), CK_COHORT_INSTANCE(3), CK_COHORT_LOCK(3), CK_COHORT_TRYLOCK(3), CK_COHORT_TRYLOCK_PROTOTYPE(3), CK_COHORT_UNLOCK(3), ck_rwcohort(3), CK_RWCOHORT_PROTOTYPE(3).

February 24, 2013.