38#ifndef _RTEMS_SCORE_COREBARRIERIMPL_H
39#define _RTEMS_SCORE_COREBARRIERIMPL_H
59#define CORE_BARRIER_MANUAL_RELEASE_MAXIMUM_COUNT 0
82 uint32_t maximum_count
92static inline void _CORE_barrier_Destroy(
96 _Thread_queue_Destroy( &the_barrier->
Wait_queue );
105static inline void _CORE_barrier_Acquire_critical(
110 _Thread_queue_Acquire_critical( &the_barrier->
Wait_queue, queue_context );
119static inline void _CORE_barrier_Release(
124 _Thread_queue_Release( &the_barrier->
Wait_queue, queue_context );
160static inline uint32_t _CORE_barrier_Surrender(
179static inline void _CORE_barrier_Flush(
This header file provides interfaces of the Barrier Handler which are used by the implementation and ...
Status_Control _CORE_barrier_Seize(CORE_barrier_Control *the_barrier, Thread_Control *executing, bool wait, Thread_queue_Context *queue_context)
Waits for the barrier.
Definition: corebarrierwait.c:76
const Thread_queue_Operations _CORE_barrier_Thread_queue_operations
These thread queue operations are used for core barriers.
Definition: corebarrierwait.c:68
void _CORE_barrier_Initialize(CORE_barrier_Control *the_barrier, uint32_t maximum_count)
Initializes the core barrier.
Definition: corebarrier.c:44
Status_Control
Status codes.
Definition: status.h:111
Thread_Control * _Thread_queue_Flush_status_object_was_deleted(Thread_Control *the_thread, Thread_queue_Queue *queue, Thread_queue_Context *queue_context)
Status object was deleted thread queue flush filter function.
Definition: threadqflush.c:60
size_t _Thread_queue_Flush_critical(Thread_queue_Queue *queue, const Thread_queue_Operations *operations, Thread_queue_Flush_filter filter, Thread_queue_Context *queue_context)
Unblocks all threads enqueued on the thread queue.
Definition: threadqflush.c:86
Thread_Control * _Thread_queue_Flush_default_filter(Thread_Control *the_thread, Thread_queue_Queue *queue, Thread_queue_Context *queue_context)
Default thread queue flush filter function.
Definition: threadqflush.c:49
This header file provides the interfaces of the Operation Status Support.
This control block is used to manage a barrier.
Definition: corebarrier.h:64
Thread_queue_Control Wait_queue
This member is used to manage the set of tasks which are blocked waiting for the barrier to be releas...
Definition: corebarrier.h:69
Thread queue context for the thread queue methods.
Definition: threadq.h:216
Thread_queue_Queue Queue
The actual thread queue.
Definition: threadq.h:640
The thread queue operations are used to manage the threads of a thread queue.
Definition: threadq.h:554
This header file provides interfaces of the Thread Queue Handler which are only used by the implement...