|____2.4 FreeRTOS 深度解析--阻塞延时

  阻塞延时的阻塞是指任务调用该延时函数后,任务会被剥离 CPU 使用权,然后进入阻塞状态,直到延时结束,任务重新获取 CPU 使用权才可以继续运行。在任务阻塞的这段时间,CPU 可以去执行其它的任务,如果其它的任务也在延时状态,那么 CPU 就将运行空闲任务。

 

 

(1)获取当前任务的任务控制块,用于指向当前正在运行或者即将要运行的任务的任务控制块。

(2)xTicksToDelay 是任务控制块的一个成员,用于记录任务需要延时的时间,单位为 SysTick 的中断周期。

(3)任务切换。调用 tashYIELD()会产生 PendSV中断,在 PendSV中断服务函数中会调用上下文切换函数 vTaskSwitchContext(),该函数的作用是寻找最高优先级的就绪任务,然后更新 pxCurrentTCB。

相关推荐
黄俊懿2 小时前
【架构师从入门到进阶】第七章:缓存和存储的优化思路——第一节:缓存概述
数据结构·数据库·分布式·缓存·架构·系统架构·1024程序员节
江屿风4 小时前
【Linux-System】【System V共享内存:从原理到实战的完整解析】流食般投喂
linux·运维·服务器·笔记·系统架构·1024程序员节
小马哥编程14 小时前
【软考架构】内聚与耦合
系统架构
burg_xun18 小时前
【生命科学 Agent】推理平台(二)
人工智能·程序人生·系统架构
gz927cool1 天前
在 Harness 上搭建 Agent-Native 应用:可迁移经验
服务器·人工智能·ai·系统架构
桃花键神1 天前
GR00T N1 —— 双系统架构如何让一个模型驱动不同人形机器人
系统架构·机器人
我喜欢就喜欢2 天前
豆包赋能抖音生态:从内容创作到运营提效的全景应用
人工智能·系统架构
dishugj2 天前
https://blog.csdn.net/dishugj/article/details/162068579
数据库·系统架构
希赛网2 天前
2026下半年系统架构设计师考前20问
系统架构·软考高级·系统架构设计师·软考高级架构师·软考高级系统架构设计师