os_task_hang 用于将指定任务从调度系统中移除,使其不再参与调度执行。
该函数不会删除任务,也不会释放资源,而是通过修改任务状态, 取消其“就绪资格”,从而实现任务的临时挂起。
| 参数 | 说明 |
|---|---|
| id | 任务ID(普通任务或快速任务) |
0 表示成功,-1 表示失败(参数错误)。
1. 参数合法性判断
防止非法任务ID访问系统数据结构。
2. 快速任务处理
快速任务通过独立标志位控制, 挂起时直接关闭其调度标记。
3. 普通任务处理
清除任务的“就绪位”(最低位), 使调度器在扫描时跳过该任务。
该方式开销极低,是典型的位标志调度设计。