RTX RTOS:高优先级线程等待标志被置位后的上下文切换时机
RTOS RTX线程标志触发后的调度行为
当高优先级线程因等待X_High线程标志处于阻塞状态,低优先级线程运行时置位该标志,系统会立即切换到高优先级线程执行。
原因如下:
- RTX是抢占式内核,核心设计就是优先保障高优先级任务的实时性。当高优先级线程从阻塞转为就绪状态时,内核会立刻触发上下文切换,暂停当前运行的低优先级线程,调度高优先级线程接管CPU。
- 这种切换不需要低优先级线程执行到阻塞、延时这类主动放弃CPU的语句,属于内核主动抢占的行为。
只有当RTX被配置为非抢占式调度模式(该模式几乎不会用于实时场景)时,才会等待低优先级线程主动释放CPU后再切换。
内容的提问来源于stack exchange,提问作者Harjeev.Sharma
相关产品推荐
相关产品推荐

