RTEMS
6.3
Toggle main menu visibility
Loading...
Searching...
No Matches
cpukit
include
rtems
score
threadqops.h
Go to the documentation of this file.
1
/* SPDX-License-Identifier: BSD-2-Clause */
2
11
12
/*
13
* Copyright (C) 2021 embedded brains GmbH & Co. KG
14
*
15
* Redistribution and use in source and binary forms, with or without
16
* modification, are permitted provided that the following conditions
17
* are met:
18
* 1. Redistributions of source code must retain the above copyright
19
* notice, this list of conditions and the following disclaimer.
20
* 2. Redistributions in binary form must reproduce the above copyright
21
* notice, this list of conditions and the following disclaimer in the
22
* documentation and/or other materials provided with the distribution.
23
*
24
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
25
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
26
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
27
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
28
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
29
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
30
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
31
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
32
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
33
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
34
* POSSIBILITY OF SUCH DAMAGE.
35
*/
36
37
#ifndef _RTEMS_SCORE_THREADQOPS_H
38
#define _RTEMS_SCORE_THREADQOPS_H
39
40
#include <
rtems/score/threadq.h
>
41
42
#ifdef __cplusplus
43
extern
"C"
{
44
#endif
45
51
60
void
_Thread_queue_Do_nothing_priority_actions
(
61
Thread_queue_Queue
*queue,
62
Priority_Actions
*priority_actions
63
);
64
74
void
_Thread_queue_FIFO_enqueue
(
75
Thread_queue_Queue
*queue,
76
Thread_Control *the_thread,
77
Thread_queue_Context
*queue_context
78
);
79
89
void
_Thread_queue_FIFO_extract
(
90
Thread_queue_Queue
*queue,
91
Thread_Control *the_thread,
92
Thread_queue_Context
*queue_context
93
);
94
110
Thread_Control *
_Thread_queue_FIFO_surrender
(
111
Thread_queue_Queue
*queue,
112
Thread_queue_Heads
*heads,
113
Thread_Control *previous_owner,
114
Thread_queue_Context
*queue_context
115
);
116
126
Thread_Control *
_Thread_queue_FIFO_first
(
const
Thread_queue_Heads
*heads );
127
129
130
#ifdef __cplusplus
131
}
132
#endif
133
134
#endif
/* _RTEMS_SCORE_THREADQOPS_H */
_Thread_queue_FIFO_first
Thread_Control * _Thread_queue_FIFO_first(const Thread_queue_Heads *heads)
Gets the first thread on the FIFO thread queue.
Definition
threadqops.c:247
_Thread_queue_FIFO_surrender
Thread_Control * _Thread_queue_FIFO_surrender(Thread_queue_Queue *queue, Thread_queue_Heads *heads, Thread_Control *previous_owner, Thread_queue_Context *queue_context)
Surrenders the thread queue to the first thread on the FIFO thread queue.
Definition
threadqops.c:261
_Thread_queue_Do_nothing_priority_actions
void _Thread_queue_Do_nothing_priority_actions(Thread_queue_Queue *queue, Priority_Actions *priority_actions)
Initializes the priority actions so that no actions are performed.
Definition
threadqops.c:66
Thread_queue_Heads
struct _Thread_queue_Heads Thread_queue_Heads
Thread queue heads.
_Thread_queue_FIFO_enqueue
void _Thread_queue_FIFO_enqueue(Thread_queue_Queue *queue, Thread_Control *the_thread, Thread_queue_Context *queue_context)
Enqueues the thread to the FIFO thread queue.
Definition
threadqops.c:216
_Thread_queue_FIFO_extract
void _Thread_queue_FIFO_extract(Thread_queue_Queue *queue, Thread_Control *the_thread, Thread_queue_Context *queue_context)
Extracts the thread from the FIFO thread queue.
Definition
threadqops.c:231
Priority_Actions
A list of priority actions.
Definition
priority.h:207
Thread_queue_Context
Thread queue context for the thread queue methods.
Definition
threadq.h:216
Thread_queue_Queue
Definition
threadq.h:427
threadq.h
This header file provides interfaces of the Thread Queue Handler which are used by the implementation...
Generated by
1.18.0