马渊云 2022-05-20 16:26 采纳率: 0%
浏览 60
已结题

为什么在FreeRTOS中使用删除任务或删除定时器之后,任务句柄和定时器句柄还是有地址呢

比如像如下代码,在函数执行完vTaskDelete(xHandleTaskLED1)之后,xHandleTaskLED1还是非空的,为什么呢

//初始化任务句柄

static TaskHandle_t xHandleTaskLED1 = NULL;
static TaskHandle_t xHandleTaskBeep = NULL;

//创建任务

static void AppTaskCreate(void)
{
xTaskCreate(vTaskLed1, /* 任务函数名 /
"Task Led1", /
任务名,字符串形式,方便调试 /
512, /
栈大小,单位为字,即4个字节 */
(void )&task_led3, / 任务形参 /
1, /
优先级,数值越大,优先级越高 /
&xHandleTaskLED1); /
任务句柄 */

xTaskCreate(
                         vTaskBeep,
                         "Task Beep",
                         512,
                         NULL,
                         2,
                         &xHandleTaskBeep);

}
//在任务beep中删除led任务

void vTaskBeep(void pvParameters)
{
/
任务都是一个无限循环,不能返回 /
while(1)
{
BEEP_ON;
/
阻塞延时,单位ms */
vTaskDelay( 20 );
BEEP_OFF;
vTaskDelay( 500 );
if(xHandleTaskLED1!=NULL)
vTaskDelete(xHandleTaskLED1);
}
}

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 5月28日
    • 创建了问题 5月20日

    悬赏问题

    • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
    • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
    • ¥30 截图中的mathematics程序转换成matlab
    • ¥15 动力学代码报错,维度不匹配
    • ¥15 Power query添加列问题
    • ¥50 Kubernetes&Fission&Eleasticsearch
    • ¥15 報錯:Person is not mapped,如何解決?
    • ¥15 c++头文件不能识别CDialog
    • ¥15 Excel发现不可读取的内容
    • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题