iofunc_close_ocb_default()

Освободить память, выделенную под блок управления открытым контекстом (OCB, Open Control Block)

Прототип:

#include <sys/iofunc.h>
int iofunc_close_ocb_default( resmgr_context_t *ctp,
void *reserved,
iofunc_ocb_t *ocb );

Аргументы:

ctp
Указатель на структуру resmgr_context_t, которую библиотека менеджера ресурсов использует для передачи контекстной информации между функциями.
reserved
Зарезервировано, аргумент должен быть NULL.
ocb
Указатель на структуру блока управления открытым контекстом (OCB, Open Control Block) iofunc_ocb_t, созданную при открытии ресурса клиентом.

Библиотека:

libc

Описание:

Функция iofunc_close_ocb_default() отключает указанный OCB ocb и освобождает связанную с ним память.

Эту функцию можно поместить на место close_ocb() в таблицу io_funcs, передаваемую в resmgr_attach() или вызвать iofunc_func_init(), чтобы инициализировать все функции значениями по умолчанию.


Note: Эта функция предполагает, что ocb указывает на структуру iofunc_ocb_t. Если структура iofunc_ocb_t инкапсулируется в пользовательской структуре OCB, то она должна быть первым полем пользовательского OCB, иначе вызывать функцию нельзя. Если указана функция ocb_free() в структуре iofunc_mount_t, то она будет вызвана. Это означает, что по крайней мере часть iofunc_ocb_t пользовательского OCB больше не действительна после iofunc_close_ocb().

iofunc_close_ocb_default() вызывает iofunc_close_ocb() для выполнения фактической работы.

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

EOK
Успешное завершение.

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

ЗОСРВ «Нейтрино»

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

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

iofunc_close_ocb(), iofunc_func_init(), iofunc_ocb_t, iofunc_time_update(), resmgr_attach(), resmgr_context_t, resmgr_io_funcs_t




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