< c‎ | thread
Defined in header <threads.h>
int mtx_trylock( mtx_t *mutex );
(since C11)

Tries to lock the mutex pointed to by mutex without blocking. Returns immediately if the mutex is already locked.

Prior calls to mtx_unlock on the same mutex synchronize-with this operation (if this operation succeeds), and all lock/unlock operations on any given mutex form a single total order (similar to the modification order of an atomic)


[edit] Parameters

mutex - pointer to the mutex to lock

[edit] Return value

thrd_success if successful, thrd_busy if the mutex has already been locked or due to a spurious failure to acquire an available mutex (since C17), thrd_error if an error occurs.

[edit] References

  • C11 standard (ISO/IEC 9899:2011):
  • The mtx_trylock function (p: 382)

[edit] See also

blocks until locks a mutex
(function) [edit]
blocks until locks a mutex or times out
(function) [edit]
unlocks a mutex
(function) [edit]
C++ documentation for mutex::try_lock
C++ documentation for timed_mutex::try_lock
C++ documentation for recursive_mutex::try_lock
C++ documentation for recursive_timed_mutex::try_lock