Модуль latch
-
box_latch_t *
box_latch_new
(void) Выделение и инициализация новой защелки.
Результат: выделенная защелка Тип результата: box_latch_t *
-
void
box_latch_delete
(box_latch_t *latch) Удаление и освобождение защелки.
Параметры: - latch (box_latch_t*) – удаляемая защелка
-
void
box_latch_lock
(box_latch_t *latch) Применение защелки. Бесконечно ожидает момента, когда текущий файбер может получить доступ к защелке.
param box_latch_t* latch: применяемая защелка
-
int
box_latch_trylock
(box_latch_t *latch) Попытка применить защелку. Возвращается незамедлительно, если защелка поставлена.
Параметры: - latch (box_latch_t*) – применяемая защелка
Результат: статус операции. 0 – успешно, 1 – защелка поставлена
Тип результата: целое число
-
void
box_latch_unlock
(box_latch_t *latch) Отмена защелки. Файбер, который вызывает данную функцию, должен иметь права на защелку.
Параметры: - latch (box_latch_t*) – отменяемая защелка