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

任务的状态

FreeRTOS中任务共存在4种状态

  • Running 运行态

当任务处于实际运行状态称之为运行态,即CPU的使用权被这个任务占用(同一个任务仅一个任务处于运行态)。

  • Ready 就绪态

处于就绪态的任务是指那些能够运行(没有被阻塞和挂起),但是当前没有运行的任务,因为同优先级或更高优先级的任务正在运行。

  • Blocked 阻塞态

如果一个任务因延时,或等待吸信号量、信息队列、事件标志组等而处于的状态被称之为阻塞态。

  • Suspended 挂起态

类似暂停,通过调用函数 vTaskSuspend() 对指定任务进行挂起,挂起后这个任务将不被执行,只有调用函数 xTasResume() 才可以将这个任务从挂起态恢复。

注意,运行态只有通过就绪态才能进入,其它状态都不能直接进入就绪态。

接下来实操一下

  • 判断句柄就可以知道该任务是否被创建
if(taskLED1Handle == NULL)
{osThreadDef(taskLED1, StartTaskLED1, osPriorityNormal, 0, 128);taskLED1Handle = osThreadCreate(osThread(taskLED1), NULL);
}
  • 删除任务

在cubeMX有封装vTaskDelete的函数osThreadTerminate(),删除记得把句柄置零

osThreadTerminate(taskLED1Handle);
taskLed1Handle = NULL;
  • 挂起和恢复任务
osThreadSuspend(taskLED1Handle); //挂起任务
osThreadResume(taskLED1Handle);  //恢复任务

相关文章:

  • 投资理财_从0到1:如何用1000元开启你的二级市场投资之旅?
  • 实战5:Python使用循环神经网络生成诗歌
  • 解决virtualbox7.1无法启动3d加速的问题
  • 大数据人工智能
  • 算法的时间复杂度
  • L37.【LeetCode题解】三数之和(双指针思想)
  • Java练习——day2(集合嵌套)
  • Nginx:轻量级高性能的Web服务器与反向代理服务器
  • 开源推荐#6:可爱的临时邮箱服务
  • 模型提示词
  • Ubuntu源码制作openssh 9.9p2 deb二进制包修复安全漏洞 —— 筑梦之路
  • 基于.NET后端实现图片搜索图片库 核心是计算上传图片与库中图片的特征向量相似度并排序展示结果
  • [Jenkins]pnpm install ‘pnpm‘ 不是内部或外部命令,也不是可运行的程序或批处理文件。
  • Harmonyos-Navigation路由跳转
  • ios app的ipa文件提交最简单的方法
  • 论文阅读笔记:Generative Modeling by Estimating Gradients of the Data Distribution
  • 云钥科技柔性上料振动蜘蛛手工作原理及应用范围详细介绍
  • 盈达科技GEO技术体系全景解密:AIM³ Pro × AICC × GEO-BENCH Pro构建全球认知堡垒​
  • 计算机网络 应用层
  • spring boot -- 配置文件application.properties 换成 application.yml
  • 网站编辑合适内向的人做吗/百度一下电脑版
  • 香港服务器做网站/百度推广账号出售
  • 郑州建设网站有哪些/如何推广网址链接
  • 网站开发人员周报/互联网营销平台
  • 小城镇建设的网站/外贸平台推广
  • 网站建设的基本术语/合肥网络推广软件系统