os_task.h 函数
2026/4/26大约 1 分钟函数声明任务管理API
os_task.h 函数
📚 本节导读
用途: 任务管理 API 函数声明
来源: kernel/include/os_task.h:271
一、任务创建
os_task_create
os_task_id os_task_create(const char *name, void (*entry)(void *parameter),
void *parameter, os_uint32_t stack_size,
os_uint8_t priority, os_uint32_t tick);功能: 创建一个新任务
参数:
- name: 任务名称
- entry: 任务入口函数
- parameter: 任务参数
- stack_size: 任务栈大小
- priority: 任务优先级
- tick: 时间片大小(仅在相同优先级下有效)
返回值: 任务 ID,失败返回 OS_NULL
os_task_delete
os_err_t os_task_delete(os_task_id task);功能: 删除指定任务
参数: task - 任务 ID
返回值: OS_EOK 成功,其他值失败
二、任务控制
os_task_start
os_err_t os_task_start(os_task_id task);功能: 启动任务
os_task_yield
os_err_t os_task_yield(void);功能: 当前任务让出 CPU
os_task_suspend
os_err_t os_task_suspend(os_task_id task);功能: 挂起任务
os_task_resume
os_err_t os_task_resume(os_task_id task);功能: 恢复任务
三、任务查询
os_task_self
os_task_id os_task_self(void);功能: 获取当前任务 ID
os_task_find
os_task_id os_task_find(const char *name);功能: 根据名称查找任务
os_task_next
os_task_id os_task_next(os_task_id task);功能: 获取下一个任务(遍历任务列表)
os_task_get_state
os_uint8_t os_task_get_state(os_task_id task);功能: 获取任务状态
四、静态任务管理
OS_TASK_DEFINE
#define OS_TASK_DEFINE(name, priority, stack_size, tick) \
os_task_dummy_t _task_obj_##name = {0}; \
OS_ALIGN(8) os_uint8_t _task_stack_##name[stack_size]功能: 静态定义任务
os_task_init
os_err_t os_task_init(os_task_id task, const char *name,
void (*entry)(void *parameter),
void *parameter,
void *stack_ptr, os_uint32_t stack_size,
os_uint8_t priority, os_uint32_t tick);功能: 初始化静态任务
os_task_deinit
os_err_t os_task_deinit(os_task_id task);功能: 反初始化静态任务
五、任务名称操作
os_task_set_name
os_err_t os_task_set_name(os_task_id task, const char *name);功能: 设置任务名称
os_task_get_name
const char *os_task_get_name(os_task_id task);功能: 获取任务名称