From 754bbf7a25a8dda49b5d08ef0d0443bbf5af0e36 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sun, 7 Apr 2024 13:41:34 -0500 Subject: new repository --- devdocs/c/thread%2Fmtx_trylock.html | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 devdocs/c/thread%2Fmtx_trylock.html (limited to 'devdocs/c/thread%2Fmtx_trylock.html') diff --git a/devdocs/c/thread%2Fmtx_trylock.html b/devdocs/c/thread%2Fmtx_trylock.html new file mode 100644 index 00000000..04c49311 --- /dev/null +++ b/devdocs/c/thread%2Fmtx_trylock.html @@ -0,0 +1,33 @@ +

mtx_trylock

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)

+

Parameters

+ +
mutex - pointer to the mutex to lock

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, thrd_error if an error occurs.

+

Defect reports

The following behavior-changing defect reports were applied retroactively to previously published C standards.

+ + + +
DR Applied to Behavior as published Correct behavior
+DR 470 C11 +mtx_trylock was not allowed to fail spuriously allowed

References

See also

+ + + + + + +
+
(C11)
blocks until locks a mutex
(function)
+
(C11)
blocks until locks a mutex or times out
(function)
+
(C11)
unlocks a mutex
(function)
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
+

+ © cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
+ https://en.cppreference.com/w/c/thread/mtx_trylock +

+
-- cgit v1.2.3