OpenEdv-开源电子网

标题: 请问下freertos可以重复的删除同一个任务么 [打印本页]

作者: 1597685605    时间: 2020-4-26 09:31
标题: 请问下freertos可以重复的删除同一个任务么
做实验freertos重复删除同一个任务会导致程序运行不正常,怎么防止重复的删除同一个任务

作者: ultraelec    时间: 2020-4-26 09:31
1597685605 发表于 2020-4-26 14:48
厉害,搞不懂删除任务之后,api为嘛不把句柄置NULL

http://www.openedv.com/forum.php?mod=viewthread&tid=308879
作者: 萌新一名    时间: 2020-4-26 10:19
单独写一个删除任务的任务,执行完成把自己删除
作者: jermy_z    时间: 2020-4-26 11:21
貌似有判断任务状态的API的吧   
作者: ultraelec    时间: 2020-4-26 14:44
删除任务前判断句柄的有效性,有效则删除任务并将句柄设置为NULL

所以删除任务代码这么写就可以:

if (handler != NULL) {
    删除任务;
    handler = NULL;
}

FreeRTOS没有API判断是否删除了任务
作者: 1597685605    时间: 2020-4-26 14:48
ultraelec 发表于 2020-4-26 14:44
删除任务前判断句柄的有效性,有效则删除任务并将句柄设置为NULL

所以删除任务代码这么写就可以:

厉害,搞不懂删除任务之后,api为嘛不把句柄置NULL
作者: 1208    时间: 2020-4-26 15:19
二楼正解
作者: 霸王猫    时间: 2020-4-26 16:31
1597685605 发表于 2020-4-26 14:48
厉害,搞不懂删除任务之后,api为嘛不把句柄置NULL

兄弟,删除任务前一定要知道哪些情况下可以删除本任务,哪些情况下目前还不能删除本任务,需要等待一会才能删除本任务。






欢迎光临 OpenEdv-开源电子网 (http://47.111.11.73/) Powered by Discuz! X3.4