FreeRTOS does not provide a single list containing all created tasks. Instead, it maintains several lists depending on the current state of each task. Tasks are moved between these lists when their state changes.
When TASK.TaskList is displayed while the target is running (for example, using emulation access or dual-port access), the debugger reads the individual task lists sequentially. During this time, a task may change its state and be moved from one list to another. As a result, the lists may not be consistent when they are read, causing the debugger to temporarily display an incorrect or changing task list.
If the target is halted while executing a task, the task lists are consistent and TASK.TaskList is displayed correctly
Add a comment