sem_post(3c) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

sem_post(3c)

sem_post(3C)             Standard C Library Functions             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  para‐
       meters 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(7))
       threads  implementation.  For  the documentation of the Solaris threads
       interface, see semaphore(3C)).

EXAMPLES
       See sem_wait(3C).

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

       tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE  TYPEAT‐
       TRIBUTE  VALUE  _  Interface StabilityCommitted _ MT-LevelAsync-Signal-
       Safe _ StandardSee standards(7).


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

Oracle Solaris 11.4               5 Feb 2008                      sem_post(3C)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3