Уничтожить объект синхронизации
Не используйте системные вызовы SyncDestroy() и SyncDestroy_r() явно; вместо этого следует использовать POSIX-функции: |
#include <sys/neutrino.h>int SyncDestroy( sync_t *sync );int SyncDestroy_r( sync_t *sync );
libc
Системные вызовы SyncDestroy() и SyncDestroy_r() уничтожают ранее созданный объект синхронизации (см. SyncTypeCreate()). Если объект синхронизации сейчас заблокирован или на условной переменной ожидают потоки, данный вызов завершится с ошибкой.
Любые попытки использования sync после его удаления будут приводить к ошибкам.
Эти функции эквивалентны, за исключением способа информирования об ошибках.
Данные вызовы не являются блокирующими.
-1
, код ошибки записывается в errno. Любое другое возвращенное значение считается успешным завершением.EOK
возвращается при успешном завершении. Функция НЕ устанавливает errno. При возникновении ошибки функция возвращает один из представленных ниже кодов.
ЗОСРВ «Нейтрино»
sync_t, pthread_cond_destroy(), pthread_mutex_destroy(), pthread_rwlock_destroy(), sem_destroy(), SyncTypeCreate()
Предыдущий раздел: Описание API системной библиотеки