Unix/Linux Go Back    

OpenSolaris 2009.06 - man page for _lwp_sema_init (opensolaris section 2)

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)

_lwp_sema_wait(2)			   System Calls 			_lwp_sema_wait(2)

       _lwp_sema_wait, _lwp_sema_trywait, _lwp_sema_init, _lwp_sema_post - semaphore operations

       #include <sys/lwp.h>

       int _lwp_sema_wait(lwp_sema_t *sema);

       int _lwp_sema_trywait(lwp_sema_t *sema);

       int _lwp_sema_init(lwp_sema_t *sema, int count);

       int _lwp_sema_post(lwp_sema_t *sema);

       Conceptually,  a semaphore is an non-negative integer count that is atomically incremented
       and decremented.  Typically  this  represents  the  number  of  resources  available.  The
       _lwp_sema_init()  function  initializes	the count, _lwp_sema_post() atomically increments
       the count, and _lwp_sema_wait() waits for the count to become  greater  than  0	and  then
       atomically decrements it.

       LWP  semaphores must be initialized before use.	The _lwp_sema_init() function initializes
       the count associated with the LWP semaphore pointed to by sema to count.

       The _lwp_sema_wait() function blocks the calling LWP until  the	semaphore  count  becomes
       greater than 0 and then atomically decrements it.

       The  _lwp_sema_trywait()  function  atomically  decrements the count if it is greater than
       zero. Otherwise it returns an error.

       The _lwp_sema_post() function atomically increments the semaphore count. If there are  any
       LWPs blocked on the semaphore, one is unblocked.

       Upon successful completion, 0 is returned. A non-zero value indicates an error.

       The  _lwp_sema_init(),  _lwp_sema_trywait(),  _lwp_sema_wait(), and _lwp_sema_post() func-
       tions will fail if:

       EINVAL	 The sema argument points to an invalid semaphore.

       EFAULT	 The sema argument points to an illegal address.

       The  _lwp_sema_wait() function will fail if:

       EINTR	The function execution was interrupted by a signal or fork(2).

       The  _lwp_sema_trywait() function will fail if:

       EBUSY	The function was called on a semaphore with a zero count.

       The  _lwp_sema_post() function will fail if:

       EOVERFLOW    The value of the sema argument exceeds SEM_VALUE_MAX.


SunOS 5.11				    8 May 1998				_lwp_sema_wait(2)
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums

All times are GMT -4. The time now is 12:14 AM.