CK_COHORT_TRYLOCK (3) - Linux Manuals

CK_COHORT_TRYLOCK: try to acquire cohort lock

NAME

CK_COHORT_TRYLOCK - try to acquire cohort lock

LIBRARY

Concurrency Kit (libck, -lck)

SYNOPSIS

In ck_cohort.h Fn CK_COHORT_TRYLOCK COHORT_NAME cohort_name COHORT *cohort void *global_trylock_context void *local_trylock_context void *lock_unlock_context

DESCRIPTION

This call attempts to acquire both the local and global (if necessary) locks from Fa cohort . It can only be used with cohort types that were defined using the CK_COHORT_TRYLOCK_PROTOTYPE3 macro. The call will not block and will return a bool that will evaluate to true iff the cohort was successfully acquired. Fa global_trylock_context will be passed as the second argument to the function that was provided as the Fa global_trylock_method argument to CK_COHORT_TRYLOCK_PROTOTYPE if that method is called, and Fa local_trylock_context will be passed to the function specified by Fa local_trylock_method . If the global lock acquisition fails, then the cohort will immediately release its local lock as well, and Fa local_unlock_context will be passed to the function specified by Fa local_unlock_method when this call is made.

SEE ALSO

ck_cohort3, CK_COHORT_PROTOTYPE3, CK_COHORT_TRYLOCK_PROTOTYPE3, CK_COHORT_INSTANCE3, CK_COHORT_INITIALIZER3, CK_COHORT_INIT3, CK_COHORT_LOCK3, CK_COHORT_UNLOCK3, CK_COHORT_LOCKED3,

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