sem_unlink(3) — Subroutines
NAME
sem_unlink − Removes the specified named semaphore (P1003.1b)
SYNOPSIS
#include <semaphore.h>
int sem_unlink (
const char ∗name) ;
LIBRARY
Realtime Library (librt.so, librt.a)
PARAMETERS
∗name
Specifies the name of the semaphore to remove.
DESCRIPTION
The sem_unlink function removes a semaphore named by the string name. If the semaphore is referenced by other processes, sem_unlink does not change the state of the semaphore.
If other processes have the semaphore open when sem_unlink is called, the semaphore is not destroyed until all references to the semaphore have been destroyed by calls to sem_close. The sem_unlink function returns immediately; it does not wait until all references have been destroyed.
Calls to sem_open to recreate or reconnect to the semaphore refer to a new semaphore after sem_unlink is called.
RETURN VALUES
On a successful call, a value of 0 (zero) is returned. Otherwise, a value of −1 is returned and errno is set to indicate that an error occurred.
ERRORS
The sem_unlink function fails under the following conditions:
[EACCES]
Permission is denied to unlink the named semaphore.
[ENAMETOOLONG]
The length of the name string exceeds {NAME_MAX} while {_POSIX_NO_TRUNC} is in effect.
[ENOENT]
The named semaphore does not exist.
SEE ALSO
Functions: sem_close(3), sem_open(3)
Guide to Realtime Programming