XFusion API v1.3.0
载入中...
搜索中...
未找到
xf_ntask.h 文件参考

无栈协程。 更多...

xf_ntask.h 的引用(Include)关系图:

浏览源代码.

结构体

struct  _xf_ntask_sem_t
 ntask 信号量结构体。 更多...
 

宏定义

#define XF_TASK_TYPE_NTASK   XF_TASK_TYPE_ntask
 ntask 类型值。 XF_TASK_TYPE_ntask 通过 xf_task_reg.inc 拼接而来。
 
#define XF_NTASK_BEGIN(ntask)
 
#define XF_NTASK_END()
 
#define xf_ntask_yield()
 
#define xf_ntask_until(compare_cb)
 
#define xf_ntask_delay(delay_ms)
 
#define xf_ntask_until_timeout(compare_cb, timeout_ms)
 
#define xf_ntask_exit()
 
#define xf_await(func)
 

类型定义

typedef struct _xf_ntask_sem_t xf_ntask_sem_t
 ntask 信号量结构体。
 
typedef int(* xf_ntask_compare_func_t) (xf_task_t task)
 
typedef enum _xf_ntask_status_t xf_ntask_status_t
 
typedef void xf_async_t
 

枚举

enum  _xf_ntask_status_t {
  XF_NTASK_NONE = -1 , XF_NTASK_WAITING , XF_NTASK_YIELDED , XF_NTASK_EXITED ,
  XF_NTASK_ENDED , XF_NTASK_FINSHED
}
 

函数

static xf_task_t xf_ntask_create_with_manager (xf_task_manager_t manager, xf_task_func_t func, void *func_arg, uint16_t priority)
 创建无栈协程
 
void xf_ntask_set_compare (xf_task_t task, xf_ntask_compare_func_t compare)
 设置比较函数,回调函数返回 0,则任务继续进行,单次有效
 
int xf_ntask_args_get_int (xf_task_t *task, const char *name)
 获取保存的整数变量
 
float xf_ntask_args_get_float (xf_task_t *task, const char *name)
 获取保存的浮点变量
 
void * xf_ntask_args_get_array (xf_task_t *task, const char *name)
 获取保存的数组
 
xf_err_t xf_ntask_args_set_int (xf_task_t *task, const char *name, int value)
 保存整数变量
 
xf_err_t xf_ntask_args_set_float (xf_task_t *task, const char *name, float value)
 保存浮点变量
 
xf_err_t xf_ntask_args_set_array (xf_task_t *task, const char *name, void *value, unsigned int size, unsigned int len)
 保存数组
 
uint32_t xf_ntask_get_lc (xf_task_t *task, const char *name)
 获取上下文位置 (给宏调用)
 
xf_err_t xf_ntask_set_lc (xf_task_t *task, const char *name, uint32_t lc)
 设置上下文位置 (给宏调用)
 
xf_ntask_status_t xf_ntask_get_exit_status (xf_task_t *task)
 获取退出状态 (给宏调用)
 
xf_err_t xf_ntask_set_exit_status (xf_task_t *task, xf_ntask_status_t status)
 设置退出状态 (给宏调用)
 
bool xf_ntask_lc_is_first (xf_task_t *task, const char *name)
 获取是否是最外层函数
 

详细描述

无栈协程。

作者
cangyu (sky.k.nosp@m.irto.nosp@m.@qq.c.nosp@m.om)
版本
0.1
日期
2024-12-16

在文件 xf_ntask.h 中定义.