Обработчик разблокировки по умолчанию
#include <sys/iofunc.h>int iofunc_unblock_default( resmgr_context_t *ctp,io_pulse_t *msg,iofunc_ocb_t *ocb );
io_pulse_t
, содержащую пульс, полученный менеджером ресурсов.libc
Функция iofunc_unblock_default() вызывает iofunc_unblock().
iofunc_unblock_default() реализует функционал, необходимый для выполнения запросов от клиента на разблокировку (например, сигнал или тайм-аут).
Эту функцию можно поместить на место unblock в таблицу io_funcs, передаваемую в resmgr_attach(). Или вызвать iofunc_func_init() , чтобы инициализировать все функции значениями по умолчанию.
Сообщение о разблокировке синтезируется разделяемой библиотекой менеджера ресурсов, когда клиент хочет разблокировать свой вызов MsgSendv() к менеджеру ресурсов. Функция iofunc_unblock_default() снимает любые блокировки ресурса, размещённые клиентом.
Если вызывается iofunc_lock_default(), обработчик разблокировки должен вызывать iofunc_unblock_default():
if ( (status = iofunc_unblock_default( ... )) != _RESMGR_DEFAULT ){return (status);}/* Выполните необходимые действия для поиска клиента и разблокировки */
ЗОСРВ «Нейтрино»
iofunc_func_init(), iofunc_lock_default(), iofunc_ocb_t, resmgr_attach(), resmgr_context_t, resmgr_io_funcs_t
Предыдущий раздел: Описание API системной библиотеки