CK_COHORT_PROTOTYPE(3) define cohort type with specified lock types

LIBRARY

Concurrency Kit (libck, -lck)

SYNOPSIS

In ck_cohort.h Fn 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_PROTOTYPE3 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:

Fa cohort_name : An identifier used for this cohort type. This will have to be passed to each of the other CK_COHORT macros.
Fa global_lock_method : The method that should be called to acquire the global lock
Fa global_unlock_method : The method that should be called to relinquish the global lock
Fa local_lock_method : The method that should be called to acquire the local lock
Fa 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;