sem_post man page on SmartOS

Man page or keyword search:  
man Server   16655 pages
apropos Keyword Search (all sections)
Output format
SmartOS logo
[printable version]

SEM_POST(3C)							  SEM_POST(3C)

NAME
       sem_post - increment the count of a semaphore

SYNOPSIS
       #include <semaphore.h>

       int sem_post(sem_t *sem);

DESCRIPTION
       The sem_post() function unlocks the semaphore referenced by sem by per‐
       forming a semaphore unlock operation on that semaphore.

       If the semaphore value resulting from this operation is positive,  then
       no  threads  were blocked waiting for the semaphore to become unlocked;
       the semaphore value is simply incremented.

       If the value of the semaphore resulting from this operation is 0,  then
       one  of	the threads  blocked waiting for the semaphore will be allowed
       to return successfully from its call to	sem_wait(3C).  If  the	symbol
       _POSIX_PRIORITY_SCHEDULING is defined, the thread  to be unblocked will
       be chosen in a manner appropriate to the scheduling policies and param‐
       eters  in effect for the blocked threads. In the case of the schedulers
       SCHED_FIFO and SCHED_RR, the highest priority waiting thread   will  be
       unblocked,  and	if  there  is  more  than  one highest priority thread
       blocked waiting for the semaphore, then	the  highest  priority	thread
       that  has  been	waiting	 the  longest will be unblocked. If the symbol
       _POSIX_PRIORITY_SCHEDULING is not defined, the choice of a  thread   to
       unblock is unspecified.

RETURN VALUES
       If  successful,	sem_post() returns 0; otherwise it returns −1 and sets
       errno to indicate the error.

ERRORS
       The sem_post() function will fail if:

       EINVAL
		     The sem argument does not refer to a valid semaphore.

       ENOSYS
		     The sem_post() function is not supported by the system.

       EOVERFLOW
		     The semaphore value exceeds SEM_VALUE_MAX.

USAGE
       The sem_post() function is reentrant with respect to signals and may be
       invoked	from  a	 signal-catching function. The semaphore functionality
       described on this manual page  is  for  the  POSIX  (see	 standards(5))
       threads	implementation.	 For  the documentation of the Solaris threads
       interface, see semaphore(3C)).

EXAMPLES
       See sem_wait(3C).

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌────────────────────┬───────────────────┐
       │  ATTRIBUTE TYPE    │  ATTRIBUTE VALUE	│
       ├────────────────────┼───────────────────┤
       │Interface Stability │ Committed		│
       ├────────────────────┼───────────────────┤
       │MT-Level	    │ Async-Signal-Safe │
       ├────────────────────┼───────────────────┤
       │Standard	    │ See standards(5). │
       └────────────────────┴───────────────────┘

SEE ALSO
       sched_setscheduler(3C),	sem_wait(3C),  semaphore(3C),	attributes(5),
       standards(5)

				  Feb 5, 2008			  SEM_POST(3C)
[top]

List of man pages available for SmartOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net