20#define TAG "task_base" 
   65    task_base->
func = func;
 
   68    task_base->
type = type;
 
   80#if XF_TASK_HUNGER_IS_ENABLE 
   84#if XF_TASK_USER_DATA_IS_ENABLE 
 
   99#if XF_TASK_HUNGER_IS_ENABLE 
 
#define XF_ASSERT(condition, retval, tag, format,...)
xfusion 断言宏(条件 不成立 时则输出日志后返回)。
 
#define BITS_SET0(var, bits_mask)
设置 32 位变量 var 的对应位掩码 bits_mask 为 1 的地方为 0。
 
#define BITS_CHECK(src, bits_mask)
检查变量 var 在 bits_mask 的位置上是否存在 1。
 
int32_t xf_err_t
整形错误类型。 错误码具体值见 xf_err_code_t.
 
static void xf_list_init(xf_list_t *list)
动态初始化链表.
 
static void xf_list_del_init(xf_list_t *entry)
xf_list_del_init - 从链表中删除节点, 并重新初始化.
 
task 的父对象,保存了 task 的公共属性。
 
xf_task_manager_t manager
 
xf_task_time_t suspend_time
 
const xf_task_vfunc_t * vfunc
 
虚函数表,不在 base 对象实现,由子对象完成实现。
 
static void task(xf_task_t task)
 
#define XF_LOGD(tag, format,...)
 
xf_err_t xf_task_vfunc_unregister(xf_task_type_t type)
task 注销虚函数注册(一般用不到的函数)。
 
void xf_task_base_init(xf_task_base_t *task_base, xf_task_manager_t manager, xf_task_type_t type, uint16_t priority, xf_task_func_t func, void *arg)
task 初始化。
 
xf_err_t xf_task_base_set_state(xf_task_t task, xf_task_state_t state)
task 设置状态。
 
const xf_task_vfunc_t * xf_task_get_vfunc(xf_task_type_t type)
task 获取虚函数。
 
void xf_task_base_reset(xf_task_base_t *task_base)
重置 task base 部分内容
 
xf_err_t xf_task_vfunc_register(xf_task_type_t type, const xf_task_vfunc_t *vfunc)
task 的虚函数注册。
 
static const xf_task_vfunc_t * _xf_task_vfunc_group[_XF_TASK_TYPE_MAX]
 
void xf_task_destructor(xf_task_t task)
任务销毁。回收任务资源
 
本头文件外界无法调用,manager 基于 base 进行调度。 开放部分在 xf_task_kernel.h .
 
#define XF_TASK_SIGNAL_RESUME
 
void(* xf_task_func_t)(xf_task_t task)
任务调用函数原型。
 
enum _xf_task_type_t xf_task_type_t
任务类型,通过注册表 xf_task_reg.inc 生成相关的内容。
 
enum _xf_task_state_t xf_task_state_t
任务状态枚举。
 
xf_err_t xf_task_manager_task_blocked(xf_task_manager_t manager, xf_task_t task)
设置当前任务为阻塞。
 
void * xf_task_manager_t
任务管理器句柄。