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

FreeBSD Manual Pages

  
 
  

home | help
CK_COHORT_TRYLOCK_PRO... BSD Library Functions Manual CK_COHORT_TRYLOCK_PRO...

NAME
     CK_COHORT_TRYLOCK_PROTOTYPE -- define cohort type with specified lock
     types

LIBRARY
     Concurrency Kit (libck, -lck)

SYNOPSIS
     #include <ck_cohort.h>

     CK_COHORT_TRYLOCK_PROTOTYPE(COHORT_NAME cohort_name,
	 LOCK_FXN global_lock_method, LOCK_FXN global_unlock_method,
	 BOOL_LOCK_FXN global_locked_method,
	 BOOL_LOCK_FXN global_trylock_method, LOCK_FXN local_lock_method,
	 LOCK_FXN local_unlock_method, BOOL_LOCK_FXN local_locked_method,
	 BOOL_LOCK_FXN local_trylock_method);

DESCRIPTION
     The ck_cohort.h header file does not define any cohort types.  Instead,
     the user must use the CK_COHORT_PROTOTYPE or CK_COHORT_TRYLOCK_PROTOTYPE
     macros to define any types	they want to use.  They	must use CK_CO-
     HORT_TRYLOCK_PROTOTYPE if they want their cohort type to have support for
     trylock operations.  The CK_COHORT_TRYLOCK_PROTOTYPE macro	takes the fol-
     lowing arguments:

     cohort_name : An identifier used for this cohort type.  This will have to
     be	passed to each of the other CK_COHORT macros.
     global_lock_method	: The method that should be called to acquire the
     global lock
     global_unlock_method : The	method that should be called to	relinquish the
     global lock
     global_locked_method : This method	should return true iff the global lock
     is	acquired by a thread.
     global_trylock_method : The method	that should be called to try to	ac-
     quire the global lock.  It	should not block and return true iff the lock
     was successfully acquired.
     local_lock_method : The method that should	be called to acquire the local
     lock
     local_unlock_method : The method that should be called to relinquish the
     local lock
     global_locked_method : This method	should return true iff the global lock
     is	acquired by a thread.
     local_trylock_method : The	method that should be called to	try to acquire
     the local lock.  It should	not block and return true iff the lock was
     successfully acquired.

     Instances of the defined cohort type can be declared as:
	 CK_COHORT_INSTANCE(cohort_name) cohort;

SEE ALSO
     ck_cohort(3), CK_COHORT_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), CK_COHORT_TRYLOCK(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_PROTOTYPE&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help