XFusion API v1.3.0
|
有栈协程。 更多...
结构体 | |
struct | _xf_ctask_config_t |
ctask 的传入参数。 更多... | |
宏定义 | |
#define | XF_TASK_TYPE_CTASK XF_TASK_TYPE_ctask |
ctask 类型值。 XF_TASK_TYPE_ctask 通过 xf_task_reg.inc 拼接而来。 | |
类型定义 | |
typedef void * | xf_ctask_queue_t |
ctask 任务队列句柄。 | |
typedef struct _xf_ctask_config_t | xf_ctask_config_t |
ctask 的传入参数。 | |
函数 | |
static xf_task_t | xf_ctask_create_with_manager (xf_task_manager_t manager, xf_task_func_t func, void *func_arg, uint16_t priority, size_t stack_size) |
在指定的任务管理器中创建 ctask。 | |
void | xf_ctask_delay_with_manager (xf_task_manager_t manager, uint32_t delay_ms) |
ctask 专用 delay 函数,在 ctask 中才能使用。不会影响调度器。 | |
xf_ctask_queue_t | xf_ctask_queue_create_with_manager (xf_task_manager_t manager, const size_t size, const size_t count) |
创建 ctask 的消息队列。此消息队列仅供 ctask 使用。 | |
xf_err_t | xf_ctask_queue_send (xf_ctask_queue_t queue, void *buffer, uint32_t timeout) |
消息队列发送。 | |
xf_err_t | xf_ctask_queue_receive (xf_ctask_queue_t queue, void *buffer, uint32_t timeout) |
消息队列接收。 | |
static xf_task_t | xf_ctask_create (xf_task_func_t func, void *func_arg, uint16_t priority, size_t stack_size) |
在默认的任务管理下,创建 ctask 任务。 | |
static void | xf_ctask_delay (uint32_t delay_ms) |
延时函数。 | |
static xf_ctask_queue_t | xf_ctask_queue_create (const size_t size, const size_t count) |
创建 ctask 消息队列。 | |
static xf_task_pool_t | xf_ctask_pool_create_with_manager (uint32_t max_works, xf_task_manager_t manager, size_t stack_size) |
在指定的任务管理下,创建 ctask 任务池。 | |
static xf_task_pool_t | xf_ctask_pool_create (uint32_t max_works, size_t stack_size) |
在默认的任务管理下,创建 ctask 任务池。 | |
有栈协程。
#define XF_TASK_TYPE_CTASK XF_TASK_TYPE_ctask |
ctask 类型值。 XF_TASK_TYPE_ctask
通过 xf_task_reg.inc
拼接而来。
在文件 xf_ctask.h 第 40 行定义.
typedef void* xf_ctask_queue_t |
ctask 任务队列句柄。
在文件 xf_ctask.h 第 47 行定义.
typedef struct _xf_ctask_config_t xf_ctask_config_t |
ctask 的传入参数。
|
inlinestatic |
在指定的任务管理器中创建 ctask。
manager | 指定的任务管理器。 |
func | 任务执行的函数。 |
func_arg | 用户自定义执行函数参数。 |
priority | 任务优先级。 |
stack_size | 任务上下文堆栈大小。 |
在文件 xf_ctask.h 第 69 行定义.
void xf_ctask_delay_with_manager | ( | xf_task_manager_t | manager, |
uint32_t | delay_ms | ||
) |
ctask 专用 delay 函数,在 ctask 中才能使用。不会影响调度器。
manager | 任务管理器对象。 |
delay_ms | ms 级别的延时,但是只能在 ctask 中使用。 |
在文件 xf_ctask.c 第 70 行定义.
xf_ctask_queue_t xf_ctask_queue_create_with_manager | ( | xf_task_manager_t | manager, |
const size_t | size, | ||
const size_t | count | ||
) |
创建 ctask 的消息队列。此消息队列仅供 ctask 使用。
manager | 任务管理器对象。 |
size | 消息队列的大小。 |
count | 消息队列的数量。 |
在文件 xf_ctask.c 第 89 行定义.
xf_err_t xf_ctask_queue_send | ( | xf_ctask_queue_t | queue, |
void * | buffer, | ||
uint32_t | timeout | ||
) |
消息队列发送。
queue | 消息队列对象。 |
buffer | 消息队列发送的数据。 |
timeout | 超时时间,规定时间内没发送成功则发送失败。 |
在文件 xf_ctask.c 第 123 行定义.
xf_err_t xf_ctask_queue_receive | ( | xf_ctask_queue_t | queue, |
void * | buffer, | ||
uint32_t | timeout | ||
) |
消息队列接收。
queue | 消息队列对象。 |
buffer | 消息队列接收的数据。 |
timeout | 超时时间,规定时间内没发送成功则接收失败。 |
在文件 xf_ctask.c 第 173 行定义.
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |