Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
CK_COHORT_TRYLOCK(3)	 BSD Library Functions Manual	  CK_COHORT_TRYLOCK(3)

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 de-
     fined 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 func-
     tion 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.

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=CK_COHORT_TRYLOCK&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help