当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]一、概念:任务的删除就是把任务由运行态或就绪态置于睡眠态,是任务创建的逆过程。二、操作:具体操作就是把将待删除的任务的任务控制块从任务控制链表中删除,并归还给空

一、概念:任务的删除就是把任务由运行态或就绪态置于睡眠态,是任务创建的逆过程。

二、操作:具体操作就是把将待删除的任务的任务控制块从任务控制链表中删除,并归还给空任务控制链表,

然后在任务就绪表中把该任务的就绪状态位置为0,这样任务就不会再被调度器调用了。

一般情况,为了安全起见,我们先在某个任务中提出删除任务的请求,然后再在将待删除任务中执行删除操作,

即由待删除任务自己删除自己,而提出删除任务请求的任务只负责提出请求。这样的好处是可以让待删除任务

在合适的时候删除自己,以利于在删除自身之前释放掉其占用的资源。

三、函数

(1)请求删除任务函数:OSTaskDelReq(prio)//prio为待删除任务的优先级别

(2)提出删除请求的任务在调用该函数时,具体使用如下:

//只有当待删除任务不存在了,就跳出循环

while (OSTaskDelReq(1) != OS_TASK_NOT_EXIST)

{

OSTimeDly(1);//延时一个时钟节拍

}

(3)待删除任务在调用该函数时,具体使用如下:

if (OSTaskDelReq(OS_PRIO_SELF) == OS_TASK_DEL_REQ)

{

OSTaskDel(OS_PRIO_SELF);//删除任务自身

}

四、典型应用

//调用删除任务函数的任务

//任务1,设优先级别为1

void TaskLed0(void *pdata)

{

while (1)

{

LED0 = !LED0;

OSTimeDlyHMSM(0, 0, 0, 400);

while (OSTaskDelReq(2) != OS_TASK_NOT_EXIST)

{

OSTimeDly(1);//延时一个时钟节拍

}

}

}

//被删除任务

//任务2,设优先级别为2

void TaskLed1(void *pdata)

{

while (1)

{

LED1 = !LED1;

OSTimeDlyHMSM(0, 0, 0, 400);

//判断是否有其它任务发出了删除自身的请求

if (OSTaskDelReq(OS_PRIO_SELF) == OS_TASK_DEL_REQ)

{

OSTaskDel(OS_PRIO_SELF);//删除任务自身

}

}

}

解析:这就是一个在任务1里提出删除任务2的请求,然后任务2删除自身的例子。

参: 任哲 《嵌入式实时操作系统uC/OS-II原理及应用》

参: 卢有亮 《嵌入式实时操作系统uC/OS原理与实践》

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

  本文主要搭建一个多生理参数测量系统的数据处理平台,在FPGA中嵌入一个32位Nios II软核处理器,用于控制数据的传输、存储及显示。主要完成了此数据处理平台硬件系统的定制及编写相应程序,以控制数

关键字: NIOS ii 生理

据9月9日消息,索尼Xperia 5 Ⅱ将于9月17日正式发布。 该机现已通过FCC认证,FCC文件显示索尼Xperia 5 Ⅱ配备的充电器型号为Sony UCH32,支持18W快充。

关键字: xperia 5 1 ii

7 月 14 日消息 苹果 Apple IIe 电脑在 37 年前的 1983 年问世,但不要以为它不能胜任现代的任务。有 Twitter 用户近日展示了如何让 Apple IIe 实现现代化的的任

关键字: apple ii

华硕在2019年经历了一年的复苏,其坚实的Zenfone 6和强大的ROG Phone II游戏引擎将于今年问世。 尽管Zenfone在11月收购了Android 10,但该公司现在正为ROG Phone II推出稳定的...

关键字: 10 Android ii phone rog 华硕

Linux内核对其驱动程序进行了修改,来支持Macintosh II系统上的Apple Desktop Bus。

关键字: ii Linux macintosh 驱动

在这篇文章中,小编将为大家带来华硕全新ROG Zenith II Extreme的相关报道。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: extreme ii rog zenith 华硕 tda21490

不考虑这两年来处理器从4核达大幅提升到8核甚至16核的情况,单从CPU性能来看,大家普遍认为过去几年CPU都是在挤牙膏升级,原因都懂得。那问题来了,如果是跨度十年的话,那如今的CPU到底比09年的CP

关键字: 810 ii x86 处理器 挤牙膏 酷睿 phenom

主板产品一直是人们的关注焦点之一,因此在这篇文章中,小编将为大家带来华硕ROG ZENITH II EXTREME。如果你想了解它的详细内容,请继续阅读。

关键字: extreme ii rog zenith 主板 华硕

AMD刚刚发布的第三代线程撕裂者用上了7nm Zen 2,不过接口改为新的sTRX4,必须搭配新的TRX40芯片组主板。 华硕率先发布了三款全新的TRX40主板,分别是玩家国度系列的ROG ZENIT

关键字: extreme ii rog zenith 主板 图赏 三代撕裂者 坐骑

到目前为止,我们已经看过太多关于 iPhone 11 的相机对比评测了,例如此前的 Pixel 4 夜景对比、Mate 30 Pro 相机对比。而最近,国外摄影 UP 主则进行了一项不太一样的相机对比

关键字: 11 ii iPhone mark pro 佳能 实拍 1dx
关闭
关闭