Manual Page Result
0
Command: sem_open | Section: 3 | Source: OpenBSD | File: sem_open.3
SEM_OPEN(3) FreeBSD Library Functions Manual SEM_OPEN(3)
NAME
sem_open, sem_close, sem_unlink - open and close named semaphores
SYNOPSIS
#include <semaphore.h>
sem_t *
sem_open(const char *name, int oflag, ...);
int
sem_close(sem_t *sem);
int
sem_unlink(const char *name);
DESCRIPTION
The sem_open() function opens and returns a named semaphore. The
sem_close() function closes a previously opened named semaphore without
removing it. The sem_unlink() function removes the named semaphore from
the system without closing it.
RETURN VALUES
On success, sem_open() returns a pointer to a semaphore. sem_close() and
sem_unlink() return 0 on success. sem_open() returns SEM_FAILED and sets
errno to indicate an error. sem_close() and sem_unlink() return -1 and
set errno to indicate an error.
ERRORS
It is an error to call sem_close() with an unnamed semaphore or to call
sem_destroy(3) with a named semaphore.
sem_open() may fail if:
[ENOSPC] Insufficient memory is available.
[EPERM] An attempt was made to open a shared semaphore owned
by another user.
sem_unlink() may fail for any of the reasons listed in unlink(2).
SEE ALSO
sem_destroy(3), sem_getvalue(3), sem_init(3), sem_post(3), sem_wait(3)
STANDARDS
sem_open(), sem_close(), and sem_unlink() appear in ISO/IEC 9945-1:1996
("POSIX.1"). This implementation deviates from the standard by
permitting less sharing.
FreeBSD 14.1-RELEASE-p8 February 11, 2023 FreeBSD 14.1-RELEASE-p8