mirror of
https://github.com/espressif/esp-idf.git
synced 2025-08-25 01:41:43 +00:00
freertos: Adds snapshot API to walk over tasks lists
This commit is contained in:
@@ -2529,7 +2529,7 @@ void vTaskInternalSetTimeOutState( TimeOut_t * const pxTimeOut ) PRIVILEGED_FUNC
|
||||
|
||||
/*
|
||||
* This function fills array with TaskSnapshot_t structures for every task in the system.
|
||||
* Used by core dump facility to get snapshots of all tasks in the system.
|
||||
* Used by panic handling code to get snapshots of all tasks in the system.
|
||||
* Only available when configENABLE_TASK_SNAPSHOT is set to 1.
|
||||
* @param pxTaskSnapshotArray Pointer to array of TaskSnapshot_t structures to store tasks snapshot data.
|
||||
* @param uxArraySize Size of tasks snapshots array.
|
||||
@@ -2538,6 +2538,26 @@ void vTaskInternalSetTimeOutState( TimeOut_t * const pxTimeOut ) PRIVILEGED_FUNC
|
||||
*/
|
||||
UBaseType_t uxTaskGetSnapshotAll( TaskSnapshot_t * const pxTaskSnapshotArray, const UBaseType_t uxArraySize, UBaseType_t * const pxTcbSz );
|
||||
|
||||
/*
|
||||
* This function iterates over all tasks in the system.
|
||||
* Used by panic handling code to iterate over tasks in the system.
|
||||
* Only available when configENABLE_TASK_SNAPSHOT is set to 1.
|
||||
* @note This function should not be used while FreeRTOS is running (as it doesn't acquire any locks).
|
||||
* @param pxTask task handle.
|
||||
* @return Handle for the next task. If pxTask is NULL, returns hadnle for the first task.
|
||||
*/
|
||||
TaskHandle_t pxTaskGetNext( TaskHandle_t pxTask );
|
||||
|
||||
/*
|
||||
* This function fills TaskSnapshot_t structure for specified task.
|
||||
* Used by panic handling code to get snapshot of a task.
|
||||
* Only available when configENABLE_TASK_SNAPSHOT is set to 1.
|
||||
* @note This function should not be used while FreeRTOS is running (as it doesn't acquire any locks).
|
||||
* @param pxTask task handle.
|
||||
* @param pxTaskSnapshot address of TaskSnapshot_t structure to fill.
|
||||
*/
|
||||
void vTaskGetSnapshot( TaskHandle_t pxTask, TaskSnapshot_t *pxTaskSnapshot );
|
||||
|
||||
/** @endcond */
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
Reference in New Issue
Block a user