13.7.2 解挂任务

更新于 2026年10月10日 版权声明
13.7.2 解挂任务

当任务处于挂起状态,如果条件满足,就需要解挂。任务恢复函数为vTaskResume(),其输入参数为要解挂的任务句柄,其代码如下。

图示(https://www.daowen.com)

任务恢复函数的功能就是把处于挂起状态的任务列表项从挂起列表xSuspendedTaskList[]中删除,并将该列表项添加到就绪列表中,让任务处于就绪态。这样任务就再一次满足了调度的条件,可以获得CPU的使用权。

另外,也可以采用中断级的任务恢复函数xTaskResumeFromISR(),这样是从一个中断服务函数中恢复暂停的任务。这个函数有一个返回值,即pdTRUE或pdFALSE。如果是pdTRUE,就意味着唤醒的任务的优先级高于当前任务的优先级,此时的中断服务函数就会被打断。该函数的代码请读者自行分析。

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)