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

FreeBSD Manual Pages

  
 
  

home | help
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 suc-
     cessfully acquired.  global_trylock_context will be passed  as  the  second
     argument to the function that was provided as the global_trylock_method ar-
     gument  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 co-
     hort   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_CO-
     HORT_LOCK(3), CK_COHORT_UNLOCK(3), CK_COHORT_LOCKED(3),

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

				 March 9, 2013. 	    CK_COHORT_TRYLOCK(3)

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

home | help