目录
互斥量的特点
具体代码解析
互斥量的特点
互斥量比信号量多一个优先级继承:当低优先级的任务获取某个信号后,中优先级的任务运行,随后高优先级的运行,高优先级的任务需要的信号量被低优先级的任务获取,所以高优先级的任务就会休眠,中优先级的任务一直运行,低优先级的任务获取的信号量,没法释放所以高优先级也不能运行。
采用互斥量解决这个问题,当低优先级的任务获取了高优先级所需要的信号时,则低优先级就会继承高优先级的优先级,当信号量被释放的时候低优先级就会变成低优先级。
具体代码解析
提升优先级:
恢复优先级: