sem_unlink(3) [osf1 man page]
sem_unlink(3) Library Functions Manual sem_unlink(3) NAME
sem_unlink - Removes the specified named semaphore (P1003.1b) LIBRARY
Realtime Library (librt.so, librt.a) SYNOPSIS
#include <semaphore.h> int sem_unlink ( const char *name) ; 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. RELATED INFORMATION
Functions: sem_close(3), sem_open(3) Guide to Realtime Programming delim off sem_unlink(3)
Check Out this Related Man Page
sem_unlink(3RT) Realtime Library Functions sem_unlink(3RT) NAME
sem_unlink - remove a named semaphore SYNOPSIS
cc [ flag... ] file... -lrt [ library... ] #include <semaphore.h> int sem_unlink(const char *name); DESCRIPTION
The sem_unlink() function removes the semaphore named by the string name. If the semaphore named by name is currently referenced by other processes, then sem_unlink() has no effect on the state of the semaphore. If one or more processes have the semaphore open when sem_unlink() is called, destruction of the semaphore is postponed until all references to the semaphore have been destroyed by calls to sem_close(3RT), _exit(2), or one of the exec functions (see exec(2)) . Calls to sem_open(3RT) to re-create or re-connect to the semaphore refer to a new semaphore after sem_unlink() is called. The sem_unlink() call does not block until all references have been destroyed; it returns immediately. RETURN VALUES
Upon successful completion, sem_unlink() returns 0. Otherwise, the semaphore is not changed and the function returns a value of -1 and sets errno to indicate the error. ERRORS
The sem_unlink() function will fail if: EACCES Permission is denied to unlink the named semaphore. ENAMETOOLONG The length of name string exceeds PATH_MAX, or a pathname component is longer than NAME_MAX while _POSIX_NO_TRUNC is in effect. ENOENT The named semaphore does not exist. ENOSYS The sem_unlink() function is not supported by the system. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Standard | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe | +-----------------------------+-----------------------------+ SEE ALSO
exec(2), exit(2), sem_close(3RT), sem_open(3RT), attributes(5), standards(5) NOTES
Solaris 2.6 was the first release to support the Asynchronous Input and Output option. Prior to this release, this function always returned -1 and set errno to ENOSYS. SunOS 5.10 28 Jun 2002 sem_unlink(3RT)