12#ifndef __XF_TASK_KERNEL_H__
13#define __XF_TASK_KERNEL_H__
60#define XF_TASK_REG_ENUM
61#include "../task/xf_task_reg.inc"
79 void *func_arg, uint16_t priority,
void *config);
119#if XF_TASK_HUNGER_IS_ENABLE
233#if XF_TASK_USER_DATA_IS_ENABLE
int32_t xf_err_t
整形错误类型。 错误码具体值见 xf_err_code_t.
static void task(xf_task_t task)
void(* xf_task_func_t)(xf_task_t task)
任务调用函数原型。
xf_err_t xf_task_set_user_data(xf_task_t task, void *user_data)
设置当前任务的 user_data。
xf_err_t xf_task_set_delay(xf_task_t task, uint32_t delay_ms)
设置任务的延时。
xf_err_t xf_task_set_priority(xf_task_t task, uint16_t priority)
设置当前任务的优先级。
xf_err_t xf_task_suspend(xf_task_t task)
任务进入挂起。挂起态的任务不会参与调度。
xf_task_t xf_task_create_with_manager(xf_task_manager_t manager, xf_task_type_t type, xf_task_func_t func, void *func_arg, uint16_t priority, void *config)
在指定任务管理器下创建任务。
xf_task_state_t xf_task_get_state(xf_task_t task)
获取当前任务的状态。
enum _xf_task_type_t xf_task_type_t
任务类型,通过注册表 xf_task_reg.inc 生成相关的内容。
void xf_task_reset(xf_task_t task)
任务重置。将任务的一些参数进行重置。
uint16_t xf_task_get_priority(xf_task_t task)
获取当前任务的优先级。
xf_err_t xf_task_set_func(xf_task_t task, xf_task_func_t func, void *arg)
设置当前任务的执行函数(某些种类任务可能不适用)。
enum _xf_task_state_t xf_task_state_t
任务状态枚举。
_xf_task_type_t
任务类型,通过注册表 xf_task_reg.inc 生成相关的内容。
xf_task_manager_t xf_task_get_manager(xf_task_t task)
从任务获取管理器对象。
void xf_task_feel_hungery_enable(xf_task_t task, uint32_t hunger_time)
启用任务感受饥饿的功能。
xf_err_t xf_task_trigger(xf_task_t task)
任务触发。无论是否到达唤醒时间,都会触发。
void * xf_task_get_arg(xf_task_t task)
从任务对象获取任务自定义参数。
void xf_task_feel_hungery_disable(xf_task_t task)
禁用任务感受饥饿功能。
void * xf_task_get_user_data(xf_task_t task)
获取当前任务的 user_data。
xf_task_type_t xf_task_get_type(xf_task_t task)
获取当前任务类型。
void xf_task_delete(xf_task_t task)
任务删除函数。将任务加入销毁队列,并设置任务为删除态。
xf_err_t xf_task_resume(xf_task_t task)
任务从挂起中恢复,进入调度。
int32_t xf_task_get_timeout(xf_task_t task)
获取任务的超时时间。
void * xf_task_manager_t
任务管理器句柄。