当前位置: 首页 > article >正文

STM32 FreeRTOS 的任务挂起与恢复以及查看任务状态

目录

任务的挂起与恢复的API函数

任务挂起函数

任务恢复函数

任务恢复函数(中断中恢复)

函数说明

注意事项

查看任务状态


任务的挂起与恢复的API函数

vTaskSuspend():挂起任务, 类似暂停,可恢复

vTaskResume():恢复被挂起的任务

xTaskResumeFromISR():在中断中恢复被挂起的任务

任务挂起函数

void vTaskSuspend( TaskHandle_t xTaskToSuspend )

xTaskToSuspend:待挂起任务的任务句柄,为NULL表示挂起任务自身。

需将宏INCLUDE_vTaskSuspend配置为 1。

任务恢复函数

void vTaskResume( TaskHandle_t xTaskToResume )

INCLUDE_vTaskSuspend必须定义为 1。

不论任务被使用 vTaskSuspend() 挂起多少次,只需调用 vTaskResume() 一次,即可使其继续执行。被恢复的任务会重新进入就绪状态。

任务恢复函数(中断中恢复)

函数说明
BaseType_t xTaskResumeFromISR( TaskHandle_t xTaskToResume )

 返回值

pdTRUE:任务恢复后需要进行任务切换。

pdFALSE:任务恢复后不需要进行任务切换。

注意事项

INCLUDE_vTaskSuspend 和 INCLUDE_xTaskResumeFromISR 必须定义为 1。

在中断服务程序中调用FreeRTOS的API函数时,中断的优先级不能高于FreeRTOS所管理的最高任务优先级。

查看任务状态

/* 开启跟踪task信息 */
#define configUSE_TRACE_FACILITY 1
#define configUSE_STATS_FORMATTING_FUNCTIONS 1

void vTaskList( char * pcWriteBuffer )

名称			状态    优先级   堆栈使用 任务编号
'X'(运行) 'B'(阻塞)、'R'(就绪)、'S'(暂停)或 'D'(删除)。

http://www.kler.cn/a/504435.html

相关文章:

  • STM32 FreeRTOS 的任务挂起与恢复以及查看任务状态
  • FLASK 上传文件
  • 鸿蒙面试 2025-01-10
  • PyTorch 中的 Dropout 解析
  • C#图表性能的巅峰之选:LightningChart®.NET
  • 风水算命系统架构与功能分析
  • 【算法学习】——整数划分问题详解(动态规划)
  • Nginx是什么?怎么用?
  • 【大数据】机器学习------决策树
  • react Hooks 父组件调用子组件函数、获取子组件属性
  • react与nodejs实现流式传输,并可以进行中断(fetch聊天版)
  • RTX 5090 加持,科研服务器如何颠覆 AI 深度学习构架?
  • 自动驾驶ADAS算法--测试工程环境搭建
  • RDP、VNC、SSH 三种登陆方式的差异解析
  • 工程水印相机结合图纸,真实现场时间地点,如何使用水印相机,超简单方法只教一次!
  • 【免费开源】积木JimuBI大屏集成eladmin
  • arcgis中生成格网矢量带高度
  • 【MySQL】简单解析一条SQL查询语句的执行过程
  • 注册中心及技术选型对比分析
  • Single-agent和Multi-agent的区别及各自适用的落地场景(ChatGPT-4o,智谱清言 GLM 4 Plus 回答)
  • C#使用OpenTK绘制3D可拖动旋转图形三棱锥
  • 2025年01月13日Github流行趋势
  • 网络层协议-----IP协议
  • k8s之pod生命周期
  • Open FPV VTX开源之betaflight配置
  • 深度剖析RabbitMQ:从基础组件到管理页面详解