Module latch | Tarantool
Reference C API reference Module latch

Module latch

type box_latch_t

A lock for cooperative multitasking environment

box_latch_t *box_latch_new(void)

Allocate and initialize the new latch.

Returns:allocated latch object
Return type:box_latch_t *
void box_latch_delete(box_latch_t *latch)

Destroy and free the latch.

Parameters:
void box_latch_lock(box_latch_t *latch)

Lock a latch. Waits indefinitely until the current fiber can gain access to the latch. Since version 2.11.0, locks are acquired exactly in the order in which they were requested.

Parameters:
int box_latch_trylock(box_latch_t *latch)

Try to lock a latch. Return immediately if the latch is locked.

Parameters:
Returns:

status of operation. 0 - success, 1 - latch is locked

Return type:

int

void box_latch_unlock(box_latch_t *latch)

Unlock a latch. The fiber calling this function must own the latch.

Parameters:
Found what you were looking for?
Feedback