[PATCH] c-users: Add rtems_*mutex_try_lock
Christian Mauderer
christian.mauderer at embedded-brains.de
Wed May 26 09:34:04 UTC 2021
---
c-user/self_contained_objects.rst | 35 +++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
diff --git a/c-user/self_contained_objects.rst b/c-user/self_contained_objects.rst
index 0be1423..3351b98 100644
--- a/c-user/self_contained_objects.rst
+++ b/c-user/self_contained_objects.rst
@@ -132,6 +132,10 @@ copies of the object in calls to
* :c:func:`rtems_recursive_mutex_lock`,
+* :c:func:`rtems_mutex_try_lock`,
+
+* :c:func:`rtems_recursive_mutex_try_lock`,
+
* :c:func:`rtems_mutex_unlock`,
* :c:func:`rtems_recursive_mutex_unlock`,
@@ -262,6 +266,37 @@ NOTES:
\clearpage
+Try to lock the mutex
+---------------------
+
+CALLING SEQUENCE:
+ .. code-block:: c
+
+ void rtems_mutex_try_lock(
+ rtems_mutex *mutex
+ );
+
+ void rtems_recursive_mutex_try_lock(
+ rtems_recursive_mutex *mutex
+ );
+
+DESCRIPTION:
+ Tries to lock the ``mutex``. In case the mutex is not locked, it will be
+ locked and the function returns with a return value of ``0``. If the mutex
+ is already locked, the function will return with a value of ``EBUSY``.
+
+NOTES:
+ This function must be called from thread context with interrupts enabled.
+
+ For recursively locking a mutex, please also see the notes for
+ :c:func:`rtems_mutex_lock` and :c:func:`rtems_recursive_mutex_lock`.
+
+ Each mutex lock operation must have a corresponding unlock operation.
+
+.. raw:: latex
+
+ \clearpage
+
Unlock the mutex
----------------
--
2.26.2
More information about the devel
mailing list