sem_unlink()

Уничтожить именованный семафор

Прототип:

#include <semaphore.h>
int sem_unlink( const char *sem_name );

Аргументы:

sem_name
The name of the semaphore that you want to destroy.

Библиотека:

libc

Описание:

The sem_unlink() function destroys the named semaphore, sem_name. Open semaphores are removed the same way that unlink() removes open files; the processes that have the semaphore open can still use it, but the semaphore will disappear as soon as the last process uses sem_close() to close it.

Any attempt to use sem_open() on an unlinked semaphore will refer to a new semaphore.

Semaphores are persistent as long as the system remains up.

Возвращаемое значение:

0
Успешное завершение.
-1
Возникла ошибка. Код ошибки записан в errno.

Коды ошибок:

EACCESS
You don't have permission to unlink the semaphore.
ELOOP
Too many levels of symbolic links or prefixes.
ENOENT
The semaphore sem_name doesn't exist.
ENAMETOOLONG
The sem_name argument is longer than (NAME_MAX - 8).
ENOSYS
The sem_unlink() function isn't implemented for the filesystem specified in path.

Классификация:

POSIX 1003.1 SEM

Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Да
В потоке
Да

Тематические ссылки:

sem_open(), sem_close(), sem_wait(), sem_trywait(), sem_post()

procnto-* в Справочнике по Утилитам




Предыдущий раздел: Описание API системной библиотеки