RTEMS  5.1
onceimpl.h
Go to the documentation of this file.
1 
9 /*
10  * Copyright (c) 2014, 2019 embedded brains GmbH. All rights reserved.
11  *
12  * embedded brains GmbH
13  * Dornierstr. 4
14  * 82178 Puchheim
15  * Germany
16  * <rtems@embedded-brains.de>
17  *
18  * The license and distribution terms for this file may be
19  * found in the file LICENSE in this distribution or at
20  * http://www.rtems.org/license/LICENSE.
21  */
22 
23 #ifndef _RTEMS_ONCE_H
24 #define _RTEMS_ONCE_H
25 
26 #include <rtems/score/thread.h>
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif /* __cplusplus */
31 
56 int _Once( unsigned char *once_state, void ( *init_routine )( void ) );
57 
64 
72 void _Once_Unlock( Thread_Life_state thread_life_state );
73 
76 #ifdef __cplusplus
77 }
78 #endif /* __cplusplus */
79 
80 #endif /* _RTEMS_ONCE_H */
Thread_Life_state _Once_Lock(void)
Locks the Once_Information_Mutex and returns the thread life state.
Definition: once.c:85
int _Once(unsigned char *once_state, void(*init_routine)(void))
Reacts according to the state of once_state.
Definition: once.c:53
Thread_Life_state
Thread life states.
Definition: thread.h:679
void _Once_Unlock(Thread_Life_state thread_life_state)
Unlocks the Once_Information_Mutex and sets the thread life protection to thread_life_state.
Definition: once.c:95
Constants and Structures Related with the Thread Control Block.