Man page - ck_cohort_trylock(3)

Packages contains this manual

Manual


NAME

CK_COHORT_TRYLOCK — try to acquire cohort lock

LIBRARY

Concurrency Kit (libck, -lck)

SYNOPSIS

#include <ck_cohort.h>

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 cohort . It can only be used with cohort types that were defined using the CK_COHORT_TRYLOCK_PROTOTYPE (3) macro. The call will not block and will return a bool that will evaluate to true iff the cohort was successfully acquired. global_trylock_context will be passed as the second argument to the function that was provided as the global_trylock_method argument to CK_COHORT_TRYLOCK_PROTOTYPE if that method is called, and local_trylock_context will be passed to the function specified by local_trylock_method . If the global lock acquisition fails, then the cohort will immediately release its local lock as well, and local_unlock_context will be passed to the function specified by local_unlock_method when this call is made.

SEE ALSO

ck_cohort (3), CK_COHORT_PROTOTYPE (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),

Additional information available at http://concurrencykit.org/ March 9, 2013. CK_COHORT_TRYLOCK (3)