CK_COHORT_TRYLOCK(3)

CK_COHORT_TRYLOCK3

Try to acquire cohort lock

Usage

#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);

Library

Concurrency Kit (libck, -lck)

Overview

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.

Releases

5 releases since Debian 8 (Jessie); the text changed 1 time.

  1. 8
  2. 9–13

From libck-dev 0.7.2-6 in Debian 13 (Trixie). Parsed by carta from the page's mdoc source.