• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

freertos如何在一个任务中删除另一个任务

带云云飞 2020-03-12 浏览量:918
可以实现在任务中删除另外的任务吗
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • freertos在一个任务中删除另一个任务的方法如下:
    第一步:在vTaskDelete中完成,FreeRTOS先把要删除的任务从就绪任务链表和事件等待链表中删除。
    第二步:然后把此任务添加到任务删除链表(即那个xTasksWaitingTermination),若删除的任务是当前运行任务,系统就执行任务调度函数.第2步则是在idle任务中完成,idle任务运行时,检查xTasksWaitingTermination链表,如果有任务在这个表上,释放该任务占用的内存空间,并把该任务从任务删除链表中删除。
    • 发布于 2020-03-18
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:2
  • 是可以的,但在确保删除的任务没有在运行,使用函数VTaskDelete函数
    • 发布于2020-03-12
    • 举报
    • 评论 0
    • 0
    • 0

  • 可以的,最好先挂起你要删除的函数,再用VTaskDelete函数删除
    • 发布于2020-03-13
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

freertos如何在一个任务中删除另一个任务