任务管理
模块分类:系统核心 / 更新时间:2026-04-26
模块概述
任务管理是 HRTOS 的核心模块之一,负责任务的状态控制、调度参与以及生命周期管理。
系统通过任务状态标志与优先级机制,实现多任务协同运行。
核心功能
- 任务创建
- 任务状态管理(运行 / 就绪 / 阻塞)
- 任务挂起与恢复
- 任务删除与资源释放
- 任务切换控制
- 调度参与控制
任务状态定义
#define OS_TASK_NONE 0 // 未创建
#define OS_TASK_RUNNING 1 // 运行中
#define OS_TASK_READY 2 // 就绪
#define OS_TASK_BLOCKED 3 // 阻塞
#define OS_TASK_PREV 4 // 超时
系统通过状态码标识任务当前运行状态,是调度器判断任务行为的重要依据。
相关 API
| 函数名 |
说明 |
详情 |
| os_task |
创建任务 |
查看 |
| os_task_state |
获取任务状态 |
查看 |
| os_task_hang |
挂起任务 |
查看 |
| os_task_exit |
任务主动退出(触发调度) |
查看 |
| os_task_delete |
删除任务并释放资源 |
查看 |
| os_task_function |
指定下一个执行任务 |
查看 |
| os_task_ready |
设置任务为就绪状态 |
查看 |
示例代码
void main()
{
// 设置任务1为就绪
os_task_ready(1);
// 查询任务状态
char state = os_task_state(1);
if(state == OS_TASK_READY)
{
// 挂起任务
os_task_hang(1);
}
while(1)
{
}
}