UCOSiii学习笔记(三)
作者:互联网
1.任务的挂起(任务进入挂起态,相当于任务运行所需的某事件、条件不满足,任务被暂停了,无法继续运行)
a)有些时候任务必须等待某些事件发生,若事件还未发生时,任务就会设置为挂起状态。
b)挂起状态的任务被放置在挂起列表中以标明任务在等待某些事件的发生。等待的时候,任务是不会占用CPU的。事件发生时,改任务会被放到就绪队列中。在这种情况下,正在运行的任务可能会被抢占(被放回就绪列表),并由UCOSiii选择优先级最高的任务去运行。换句话说,如果新的任务优先级最高,那么它就会被立即运行。
c)任务挂起函数:OS_TaskSuspend();
d)任务恢复函数:OS_TaskResume();
e)调用OSTaskSuspend()会任务无条件地停止运行。有时候调用OSTaskSuspend()不是为了等待某个事件的发生,而是等待另外一个任务调用OSTaskResume()函数恢复这个任务。
f)恢复任务时,不同任务的优先级会很大程度上影响任务的运行顺序。
注意:一个任务可以被多次挂起,但是被n次挂起之后就必须要对改任务恢复n次才可以
标签:UCOSiii,调用,优先级,笔记,学习,任务,事件,等待,运行 来源: https://blog.csdn.net/buhuidage/article/details/120209544