![]() |
RTEMS 6.1
|
This group contains the Mutex Handler implementation. More...
Files | |
| file | coremutex.h |
| This header file provides interfaces of the Mutex Handler which are used by the implementation and the Application Configuration. | |
| file | coremuteximpl.h |
| This header file provides interfaces of the Mutex Handler which are only used by the implementation. | |
| file | coremutexseize.c |
| This source file contains the implementation of _CORE_mutex_Seize_slow(). | |
Data Structures | |
| struct | CORE_mutex_Control |
| Control block used to manage each mutex. More... | |
| struct | CORE_recursive_mutex_Control |
| The recursive mutex control. More... | |
| struct | CORE_ceiling_mutex_Control |
| The recursive mutex control with priority ceiling protocol support. More... | |
Macros | |
| #define | CORE_MUTEX_TQ_OPERATIONS &_Thread_queue_Operations_priority |
| #define | CORE_MUTEX_TQ_PRIORITY_INHERIT_OPERATIONS &_Thread_queue_Operations_priority_inherit |
Functions | |
| Status_Control | _CORE_mutex_Seize_slow (CORE_mutex_Control *the_mutex, const Thread_queue_Operations *operations, Thread_Control *executing, bool wait, Thread_queue_Context *queue_context) |
| Seize the mutex slowly. | |
This group contains the Mutex Handler implementation.
This handler encapsulates functionality which provides the foundation Mutex services used in all of the APIs supported by RTEMS. A mutex is an enhanced version of the standard Dijkstra binary semaphore used to provide synchronization and mutual exclusion capabilities.
| Status_Control _CORE_mutex_Seize_slow | ( | CORE_mutex_Control * | the_mutex, |
| const Thread_queue_Operations * | operations, | ||
| Thread_Control * | executing, | ||
| bool | wait, | ||
| Thread_queue_Context * | queue_context | ||
| ) |
Seize the mutex slowly.
| [in,out] | the_mutex | The mutex to seize. |
| operations | The thread queue operations. | |
| executing | The calling thread. | |
| wait | Indicates whether the calling thread is willing to wait. | |
| queue_context | The thread queue context. |
| _Thread_Wait_get_status | The status of the executing thread. |
| STATUS_UNAVAILABLE | The calling thread is not willing to wait. |