os_task_function 用于强制指定下一个执行的任务, 通过修改调度标志,使指定任务在下一次调度时优先运行。
该函数不会立即发生上下文切换,而是影响调度器的下一次决策, 本质上是一种“调度插队机制”。
| 参数 | 说明 |
|---|---|
| id | 目标任务ID |
0 表示成功,-1 表示失败(参数错误或当前不可插队)。
1. 防重复调度保护
系统通过 OS_JINCHENG_CUNCHU 标志防止重复插队, 保证调度过程的稳定性。
2. 保存当前任务
当前任务被记录为“上一个任务”, 用于后续调度恢复或状态判断。
3. 指定目标任务
直接修改运行任务编号,使调度器在下一次执行时切换目标任务。
该方式相比传统优先级调度更加直接, 适用于需要强制控制执行顺序的场景。