浏览源代码.
|
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) |
| 在指定任务管理器下创建任务。
|
|
void | xf_task_delete (xf_task_t task) |
| 任务删除函数。将任务加入销毁队列,并设置任务为删除态。
|
|
void | xf_task_reset (xf_task_t task) |
| 任务重置。将任务的一些参数进行重置。
|
|
void * | xf_task_get_arg (xf_task_t task) |
| 从任务对象获取任务自定义参数。
|
|
int32_t | xf_task_get_timeout (xf_task_t task) |
| 获取任务的超时时间。
|
|
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) |
| 启用任务感受饥饿的功能。
|
|
void | xf_task_feel_hungery_disable (xf_task_t task) |
| 禁用任务感受饥饿功能。
|
|
xf_err_t | xf_task_suspend (xf_task_t task) |
| 任务进入挂起。挂起态的任务不会参与调度。
|
|
xf_err_t | xf_task_resume (xf_task_t task) |
| 任务从挂起中恢复,进入调度。
|
|
xf_err_t | xf_task_trigger (xf_task_t task) |
| 任务触发。无论是否到达唤醒时间,都会触发。
|
|
xf_task_type_t | xf_task_get_type (xf_task_t task) |
| 获取当前任务类型。
|
|
xf_task_state_t | xf_task_get_state (xf_task_t task) |
| 获取当前任务的状态。
|
|
uint16_t | xf_task_get_priority (xf_task_t task) |
| 获取当前任务的优先级。
|
|
xf_err_t | xf_task_set_priority (xf_task_t task, uint16_t priority) |
| 设置当前任务的优先级。
|
|
xf_err_t | xf_task_set_delay (xf_task_t task, uint32_t delay_ms) |
| 设置任务的延时。
|
|
xf_err_t | xf_task_set_func (xf_task_t task, xf_task_func_t func, void *arg) |
| 设置当前任务的执行函数(某些种类任务可能不适用)。
|
|
xf_err_t | xf_task_set_user_data (xf_task_t task, void *user_data) |
| 设置当前任务的 user_data。
|
|
void * | xf_task_get_user_data (xf_task_t task) |
| 获取当前任务的 user_data。
|
|
- 作者
- cangyu (sky.k.nosp@m.irto.nosp@m.@qq.c.nosp@m.om)
- 版本
- 0.1
- 日期
- 2024-07-05
- 版权所有
- Copyright (c) 2024, CorAL. All rights reserved.
在文件 xf_task_kernel.c 中定义.
◆ TAG
◆ xf_task_create_with_manager()
在指定任务管理器下创建任务。
- 参数
-
manager | 指定的任务管理器。 |
type | 任务类型。 |
func | 任务执行函数。 |
func_arg | 任务用户自定义参数。 |
priority | 任务优先级。 |
config | 任务配置结构体,根据不同类型任务不同配置。 |
- 返回
- xf_task_t 任务对象,返回为 NULL 则创建失败
在文件 xf_task_kernel.c 第 33 行定义.
◆ xf_task_delete()
◆ xf_task_reset()
◆ xf_task_get_arg()
◆ xf_task_get_timeout()
int32_t xf_task_get_timeout |
( |
xf_task_t |
task | ) |
|
获取任务的超时时间。
- 参数
-
- 返回
- int32_t 正数为超过指定循环的时间,负数为提前执行(可能是trigger触发)的时间
在文件 xf_task_kernel.c 第 75 行定义.
◆ xf_task_get_manager()
◆ xf_task_feel_hungery_enable()
void xf_task_feel_hungery_enable |
( |
xf_task_t |
task, |
|
|
uint32_t |
hunger_time |
|
) |
| |
启用任务感受饥饿的功能。
- 参数
-
task | 任务对象。 |
hunger_time | 任务的饥饿值。单位为 ms,超时后饥饿值会爬升一个优先级。 |
在文件 xf_task_kernel.c 第 95 行定义.
◆ xf_task_feel_hungery_disable()
void xf_task_feel_hungery_disable |
( |
xf_task_t |
task | ) |
|
◆ xf_task_suspend()
任务进入挂起。挂起态的任务不会参与调度。
- 注解
- 任务出于挂起中的时候,时间不算入延时事件中。
- 参数
-
- 返回
- xf_err_t
- XF_ERR_INVALID_ARG 参数错误
- XF_ERR_INVALID_STATE 状态错误,状态不能是删除态
- XF_OK 挂起成功
在文件 xf_task_kernel.c 第 115 行定义.
◆ xf_task_resume()
任务从挂起中恢复,进入调度。
- 注解
- 恢复的任务默认出于阻塞态。
- 参数
-
- 返回
- xf_err_t
- XF_ERR_INVALID_ARG 参数错误
- XF_ERR_INVALID_STATE 状态错误,状态必须属于挂起态
- XF_OK 恢复成功
在文件 xf_task_kernel.c 第 130 行定义.
◆ xf_task_trigger()
◆ xf_task_get_type()
◆ xf_task_get_state()
◆ xf_task_get_priority()
uint16_t xf_task_get_priority |
( |
xf_task_t |
task | ) |
|
◆ xf_task_set_priority()
设置当前任务的优先级。
- 参数
-
task | 任务对象。 |
priority | 任务的优先级设置。 |
- 返回
- xf_err_t
- XF_ERR_INVALID_ARG 参数错误,
- XF_OK 优先级设置成功
在文件 xf_task_kernel.c 第 184 行定义.
◆ xf_task_set_delay()
设置任务的延时。
- 注解
- 不同任务的延时意义不同。
- 参数
-
task | 任务对象。 |
delay_ms | 延时时间,单位为 ms。 |
- 返回
- xf_err_t
- XF_ERR_INVALID_ARG 参数错误,
- XF_OK 任务延时设置成功
在文件 xf_task_kernel.c 第 202 行定义.
◆ xf_task_set_func()
设置当前任务的执行函数(某些种类任务可能不适用)。
- 参数
-
task | 任务对象。 |
func | 执行的函数。 |
arg | 用户自定义执行任务的参数。 |
- 返回
- xf_err_t
- XF_ERR_INVALID_ARG 参数错误,
- XF_OK 设置函数成功
在文件 xf_task_kernel.c 第 214 行定义.
◆ xf_task_set_user_data()
设置当前任务的 user_data。
- 参数
-
task | 任务对象。 |
user_data | 用户自定义的数据。 |
- 返回
- xf_err_t
- XF_ERR_INVALID_ARG 参数错误,
- XF_OK 设置函数成功
在文件 xf_task_kernel.c 第 231 行定义.
◆ xf_task_get_user_data()
void * xf_task_get_user_data |
( |
xf_task_t |
task | ) |
|