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 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 co-
       hort  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.		  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+14.3.quarterly>

home | help