CMSIS-RTOS2
Version 2.1.3
Real-Time Operating System: API and RTX Reference Implementation
|
Events generated by thread functions. More...
Functions | |
void | EvrRtxThreadError (osThreadId_t thread_id, int32_t status) |
Event on thread error (Error) More... | |
void | EvrRtxThreadNew (osThreadFunc_t func, void *argument, const osThreadAttr_t *attr) |
Event on thread create and intialize (API) More... | |
void | EvrRtxThreadCreated (osThreadId_t thread_id, uint32_t thread_addr, const char *name) |
Event on successful thread create (Op) More... | |
void | EvrRtxThreadGetName (osThreadId_t thread_id, const char *name) |
Event on thread name retrieve (API) More... | |
void | EvrRtxThreadGetId (osThreadId_t thread_id) |
Event on current running thread ID retrieve (API) More... | |
void | EvrRtxThreadGetState (osThreadId_t thread_id, osThreadState_t state) |
Event on thread state retrieve (API) More... | |
void | EvrRtxThreadGetStackSize (osThreadId_t thread_id, uint32_t stack_size) |
Event on thread stack size retrieve (API) More... | |
void | EvrRtxThreadGetStackSpace (osThreadId_t thread_id, uint32_t stack_space) |
Event on available stack space retrieve (API) More... | |
void | EvrRtxThreadSetPriority (osThreadId_t thread_id, osPriority_t priority) |
Event on thread priority set (API) More... | |
void | EvrRtxThreadPriorityUpdated (osThreadId_t thread_id, osPriority_t priority) |
Event on thread priority updated (Op) More... | |
void | EvrRtxThreadGetPriority (osThreadId_t thread_id, osPriority_t priority) |
Event on thread priority retrieve (API) More... | |
void | EvrRtxThreadYield (void) |
Event on thread yield (API) More... | |
void | EvrRtxThreadSuspend (osThreadId_t thread_id) |
Event on thread suspend (API) More... | |
void | EvrRtxThreadSuspended (osThreadId_t thread_id) |
Event on successful thread suspend (Op) More... | |
void | EvrRtxThreadResume (osThreadId_t thread_id) |
Event on thread resume (API) More... | |
void | EvrRtxThreadResumed (osThreadId_t thread_id) |
Event on successful thread resume (Op) More... | |
void | EvrRtxThreadDetach (osThreadId_t thread_id) |
Event on thread detach (API) More... | |
void | EvrRtxThreadDetached (osThreadId_t thread_id) |
Event on successful thread detach (Op) More... | |
void | EvrRtxThreadJoin (osThreadId_t thread_id) |
Event on thread join (API) More... | |
void | EvrRtxThreadJoinPending (osThreadId_t thread_id) |
Event on pending thread join (Op) More... | |
void | EvrRtxThreadJoined (osThreadId_t thread_id) |
Event on successful thread join (Op) More... | |
void | EvrRtxThreadBlocked (osThreadId_t thread_id, uint32_t timeout) |
Event on thread execution block (Detail) More... | |
void | EvrRtxThreadUnblocked (osThreadId_t thread_id, uint32_t ret_val) |
Event on thread execution unblock (Detail) More... | |
void | EvrRtxThreadPreempted (osThreadId_t thread_id) |
Event on running thread pre-emption (Detail) More... | |
void | EvrRtxThreadSwitched (osThreadId_t thread_id) |
Event on running thread switch (Op) More... | |
void | EvrRtxThreadExit (void) |
Event on thread exit (API) More... | |
void | EvrRtxThreadTerminate (osThreadId_t thread_id) |
Event on thread terminate (API) More... | |
void | EvrRtxThreadDestroyed (osThreadId_t thread_id) |
Event on successful thread terminate (Op) More... | |
void | EvrRtxThreadGetCount (uint32_t count) |
Event on active thread count retrieve (API) More... | |
void | EvrRtxThreadEnumerate (osThreadId_t *thread_array, uint32_t array_items, uint32_t count) |
Event on active threads enumerate (API) More... | |
void EvrRtxThreadError | ( | osThreadId_t | thread_id, |
int32_t | status | ||
) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId or NULL when ID is unknown. |
[in] | status | extended execution status. |
The event ThreadError is generated when Thread Management routines complete their execution due to an error.
The status parameter indicates the execution status and can be one of the osStatus_t codes or one of the extended execution status codes which are summarized in the table below.
Extended Status Code | Description |
---|---|
osRtxErrorKernelNotReady | Kernel scheduler is not in Ready state. |
osRtxErrorKernelNotRunning | Kernel scheduler is not executing - there is no running thread. |
osRtxErrorInvalidControlBlock | Object control block with invalid alignment or size was specified. |
osRtxErrorInvalidDataMemory | Object data memory with invalid alignment or size was specified. |
osRtxErrorInvalidThreadStack | Thread stack memory with invalid alignment or size was specified. |
osRtxErrorInvalidPriority | Invalid thread priority was specified. |
osRtxErrorThreadNotJoinable | Specified thread is not joinable. |
osRtxErrorMutexNotOwned | Specified mutex is not owned by the current running thread. |
osRtxErrorMutexNotLocked | Specified mutex is not locked. |
osRtxErrorMutexLockLimit | Maximum number of recursive mutex locks reached. |
osRtxErrorSemaphoreCountLimit | Semaphore count limit reached. |
osRtxErrorTZ_InitContext_S | Secure context memory system initialization failed. |
osRtxErrorTZ_AllocContext_S | Secure context memory allocation failed. |
osRtxErrorTZ_FreeContext_S | Secure context memory deallocation failed. |
osRtxErrorTZ_LoadContext_S | Secure context load failed. |
osRtxErrorTZ_SaveContext_S | Secure context save failed. |
Value in the Event Recorder shows:
void EvrRtxThreadNew | ( | osThreadFunc_t | func, |
void * | argument, | ||
const osThreadAttr_t * | attr | ||
) |
[in] | func | thread function. |
[in] | argument | pointer that is passed to the thread function as start argument. |
[in] | attr | thread attributes. |
The event ThreadNew is generated when the function osThreadNew is called.
Value in the Event Recorder shows:
void EvrRtxThreadCreated | ( | osThreadId_t | thread_id, |
uint32_t | thread_addr, | ||
const char * | name | ||
) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
[in] | thread_addr | thread entry address. |
[in] | name | pointer to thread object name. |
The event ThreadCreated is generated when the function osThreadNew successfully creates a thread object.
Value in the Event Recorder shows:
void EvrRtxThreadGetName | ( | osThreadId_t | thread_id, |
const char * | name | ||
) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
[in] | name | pointer to thread object name. |
The event ThreadGetName is generated when the function osThreadGetName is called and its execution result is known.
Value in the Event Recorder shows:
void EvrRtxThreadGetId | ( | osThreadId_t | thread_id | ) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
The event ThreadGetId is generated when the function osThreadGetId is called and its execution result is known.
Value in the Event Recorder shows:
void EvrRtxThreadGetState | ( | osThreadId_t | thread_id, |
osThreadState_t | state | ||
) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
[in] | state | current thread state of the specified thread. |
The event ThreadGetState is generated when the function osThreadGetState is called and its execution result is known.
Value in the Event Recorder shows:
void EvrRtxThreadGetStackSize | ( | osThreadId_t | thread_id, |
uint32_t | stack_size | ||
) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
[in] | stack_size | stack size in bytes. |
The event ThreadGetStackSize is generated when the function osThreadGetStackSize is called and its execution result is known.
Value in the Event Recorder shows:
void EvrRtxThreadGetStackSpace | ( | osThreadId_t | thread_id, |
uint32_t | stack_space | ||
) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
[in] | stack_space | remaining stack space in bytes. |
The event ThreadGetStackSpace is generated when the function osThreadGetStackSpace is called and its execution result is known.
Value in the Event Recorder shows:
void EvrRtxThreadSetPriority | ( | osThreadId_t | thread_id, |
osPriority_t | priority | ||
) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
[in] | priority | new priority value for the thread function. |
The event ThreadSetPriority is generated when the function osThreadSetPriority is called.
Value in the Event Recorder shows:
void EvrRtxThreadPriorityUpdated | ( | osThreadId_t | thread_id, |
osPriority_t | priority | ||
) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
[in] | priority | new priority value for the thread function. |
The event ThreadPriorityUpdated is generated when the function osThreadSetPriority successfully updated the specified thread priority.
Value in the Event Recorder shows:
void EvrRtxThreadGetPriority | ( | osThreadId_t | thread_id, |
osPriority_t | priority | ||
) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
[in] | priority | current priority value of the specified thread. |
The event ThreadGetPriority is generated when the function osThreadGetPriority is called and its execution result is known.
Value in the Event Recorder shows:
void EvrRtxThreadYield | ( | void | ) |
The event ThreadYield is generated when the function osThreadYield is called.
void EvrRtxThreadSuspend | ( | osThreadId_t | thread_id | ) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
The event ThreadSuspend is generated when the function osThreadSuspend is called.
Value in the Event Recorder shows:
void EvrRtxThreadSuspended | ( | osThreadId_t | thread_id | ) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
The event ThreadSuspended is generated when the function osThreadSuspend successfully suspends the specified thread.
Value in the Event Recorder shows:
void EvrRtxThreadResume | ( | osThreadId_t | thread_id | ) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
The event ThreadResume is generated when the function osThreadResume is called.
Value in the Event Recorder shows:
void EvrRtxThreadResumed | ( | osThreadId_t | thread_id | ) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
The event ThreadResumed is generated when the function osThreadResume successfully resumes the specified thread.
Value in the Event Recorder shows:
void EvrRtxThreadDetach | ( | osThreadId_t | thread_id | ) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
The event ThreadDetach is generated when the function osThreadDetach is called.
Value in the Event Recorder shows:
void EvrRtxThreadDetached | ( | osThreadId_t | thread_id | ) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
The event ThreadDetached is generated when the function osThreadDetach successfully detaches the specified thread.
Value in the Event Recorder shows:
void EvrRtxThreadJoin | ( | osThreadId_t | thread_id | ) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
The event ThreadJoin is generated when the function osThreadJoin is called.
Value in the Event Recorder shows:
void EvrRtxThreadJoinPending | ( | osThreadId_t | thread_id | ) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
The event ThreadJoinPending is generated when the function osThreadJoin suspends current running thread until the specified thread terminates.
Value in the Event Recorder shows:
void EvrRtxThreadJoined | ( | osThreadId_t | thread_id | ) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
The event ThreadJoined is generated when the function osThreadJoin successfully joins the specified thread.
Value in the Event Recorder shows:
void EvrRtxThreadBlocked | ( | osThreadId_t | thread_id, |
uint32_t | timeout | ||
) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
[in] | timeout | Timeout Value or 0 in case of no time-out. |
The event ThreadBlocked is generated when the current running thread execution is blocked.
Value in the Event Recorder shows:
void EvrRtxThreadUnblocked | ( | osThreadId_t | thread_id, |
uint32_t | ret_val | ||
) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
[in] | ret_val | extended execution status of the thread. |
The event ThreadUnblocked is generated when the blocked thread execution is unblocked.
Value in the Event Recorder shows:
void EvrRtxThreadPreempted | ( | osThreadId_t | thread_id | ) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
The event ThreadPreempted is generated when current running thread execution is preempted.
Value in the Event Recorder shows:
void EvrRtxThreadSwitched | ( | osThreadId_t | thread_id | ) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
The event ThreadSwitched is generated when current running thread execution switches.
Value in the Event Recorder shows:
void EvrRtxThreadExit | ( | void | ) |
The event ThreadExit is generated when the function osThreadExit is called.
void EvrRtxThreadTerminate | ( | osThreadId_t | thread_id | ) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
The event ThreadTerminate is generated when the function osThreadTerminate is called.
Value in the Event Recorder shows:
void EvrRtxThreadDestroyed | ( | osThreadId_t | thread_id | ) |
[in] | thread_id | thread ID obtained by osThreadNew or osThreadGetId. |
The event ThreadDestroyed is generated when the function osThreadExit or osThreadTerminate successfully terminates the thread.
Value in the Event Recorder shows:
void EvrRtxThreadGetCount | ( | uint32_t | count | ) |
[in] | count | number of active threads. |
The event ThreadGetCount is generated when the function osThreadGetCount is called and its execution result is known.
Value in the Event Recorder shows:
void EvrRtxThreadEnumerate | ( | osThreadId_t * | thread_array, |
uint32_t | array_items, | ||
uint32_t | count | ||
) |
[in] | thread_array | pointer to array for retrieving thread IDs. |
[in] | array_items | maximum number of items in array for retrieving thread IDs. |
[in] | count | number of enumerated threads. |
The event ThreadEnumerate is generated when the function osThreadEnumerate is called and its execution result is known.
Value in the Event Recorder shows: