svcadm(8)을 검색하려면 섹션에서 8 을 선택하고, 맨 페이지 이름에 svcadm을 입력하고 검색을 누른다.
sem_init(3c)
Standard C Library Functions sem_init(3C)
NAME
sem_init - initialize an unnamed semaphore
SYNOPSIS
#include <semaphore.h>
int sem_init(sem_t *sem, int pshared, unsigned int value);
DESCRIPTION
The sem_init() function is used to initialize the unnamed semaphore
referred to by sem. The value of the initialized semaphore is value.
Following a successful call to sem_init(), the semaphore may be used in
subsequent calls to sem_wait(3C), sem_trywait(3C), sem_post(3C), and
sem_destroy(3C). This semaphore remains usable until the semaphore is
destroyed.
If the pshared argument has a non-zero value, then the semaphore is
shared between processes; in this case, any process that can access the
semaphore sem can use sem for performing sem_wait(3C), sem_trywait(3C),
sem_post(3C), and sem_destroy(3C) operations.
Only sem itself may be used for performing synchronization. The result
of referring to copies of sem in calls to sem_wait(3C), sem_try‐
wait(3C), sem_post(3C), and sem_destroy(3C), is undefined.
If the pshared argument is zero, then the semaphore is shared between
threads of the process; any thread in this process can use sem for per‐
forming sem_wait(3C), sem_trywait(3C), sem_post(3C), and
sem_destroy(3C) operations. The use of the semaphore by threads other
than those created in the same process is undefined.
Attempting to initialize an already initialized semaphore results in
undefined behavior.
The sem_open(3C) function is used with named semaphores.
RETURN VALUES
Upon successful completion, the function initializes the semaphore in
sem. Otherwise, it returns −1 and sets errno to indicate the error.
ERRORS
The sem_init() function will fail if:
EINVAL The value argument exceeds SEM_VALUE_MAX.
ENOSPC A resource required to initialize the semaphore has been
exhausted, or the resources have reached the limit on sema‐
phores (SEM_NSEMS_MAX).
ENOSYS The sem_init() function is not supported by the system.
EPERM The process lacks the appropriate privileges to initialize
the semaphore.
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-LevelMT-Safe _ Stan‐
dardSee standards(7).
SEE ALSO
sem_destroy(3C), sem_open(3C), sem_post(3C), sem_wait(3C),
attributes(7), standards(7)
Oracle Solaris 11.4 9 Jul 2009 sem_init(3C)