84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
这个低优先级的任务会不会接收这个消息呢?系统会不会发生死锁?
认证0级讲师
低优先级任务是否会接收消息并执行要看具体的调度算法和程序怎么写了,比如优先级是实时的还是基于时间片的,消息发送是阻塞式还是非阻塞式,等等。至于是否发生死锁,应该是一定不会发生死锁。因为死锁发生的条件一定是两个任务都在等待对方,而如果高优先级任务发送消息后阻塞了,那么低优先级任务一定会被调度执行,不存在相互等待的情况。
低优先级任务是否会接收消息并执行要看具体的调度算法和程序怎么写了,比如优先级是实时的还是基于时间片的,消息发送是阻塞式还是非阻塞式,等等。
至于是否发生死锁,应该是一定不会发生死锁。因为死锁发生的条件一定是两个任务都在等待对方,而如果高优先级任务发送消息后阻塞了,那么低优先级任务一定会被调度执行,不存在相互等待的情况。