FreeRTOS之vTaskDelete()

vTaskDelete()函数解析

task. h
void vTaskDelete( TaskHandle_t xTask );

总结

删除先前使用xTaskCreate()或xTaskCreateStatic()创建的任务实例。
已删除的任务不再存在,因此无法进入运行状态。
不要试图使用已删除的任务句柄。
当一个任务被删除时,空闲任务负责释放用来保存被删除任务的堆栈和数据结构(任务控制块)的内存。因此,如果应用程序使用了vTaskDelete() API函数,那么应用程序还必须确保空闲任务不会占用处理时间(必须在运行状态下分配空闲任务的时间)。
只有内核本身分配给任务的内存在删除任务时才会自动释放。应用程序(而不是内核)分配给任务的内存或任何其他资源必须在删除任务时由应用程序显式释放。

参数

参数意义
xTask要删除的任务的句柄(主任务)。要获取任务的句柄,可以使用xTaskCreate()创建任务并使用pxCreatedTask参数,或者使用xTaskCreateStatic()创建任务并存储返回值,或者在调用xTaskGetHandle()时使用任务的名称。任务可以通过传递NULL来代替有效的任务句柄来删除自身。

返回值

None

使用例程

void vOtherFunction( void )
 {
 TaskHandle_t xHandle = NULL;

     // Create the task, storing the handle.
     xTaskCreate( vTaskCode, "NAME", STACK_SIZE, NULL, tskIDLE_PRIORITY, &xHandle );

     // Use the handle to delete the task.
     if( xHandle != NULL )
     {
         vTaskDelete( xHandle );
     }
 }

说明

Freertos更多精彩

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值