sys库接口文档
2024/4/7大约 3 分钟
sys库接口文档
sys.wait(ms)
Task任务延时函数,只能用于任务函数中
- 参数
| 传入值类型 | 释义 |
|---|---|
| number | ms 整数,最大等待126322567毫秒 |
- 返回值
定时结束返回nil,被其他线程唤起返回调用线程传入的参数
- 例子
sys.wait(30)sys.waitUntil(id, ms)
Task任务的条件等待函数(包括事件消息和定时器消息等条件),只能用于任务函数中。
- 参数
| 传入值类型 | 释义 |
|---|---|
| param | id 消息ID |
| number | ms 等待超时时间,单位ms,最大等待126322567毫秒 |
- 返回值
result 接收到消息返回true,超时返回false data 接收到消息返回消息参数
- 例子
result, data = sys.waitUntil("SIM_IND", 120000)sys.waitUntilExt(id, ms)
Task任务的条件等待函数扩展(包括事件消息和定时器消息等条件),只能用于任务函数中。
- 参数
| 传入值类型 | 释义 |
|---|---|
| param | id 消息ID |
| number | ms 等待超时时间,单位ms,最大等待126322567毫秒 |
- 返回值
message 接收到消息返回message,超时返回false data 接收到消息返回消息参数
- 例子
result, data = sys.waitUntilExt("SIM_IND", 120000)sys.taskInit(fun, …)
创建一个任务线程,在模块最末行调用该函数并注册模块中的任务函数,main.lua导入该模块即可
- 参数
| 传入值类型 | 释义 |
|---|---|
| param | fun 任务函数名,用于resume唤醒时调用 |
| param | … 任务函数fun的可变参数 |
- 返回值
co 返回该任务的线程号
- 例子
sys.taskInit(task1,'a','b')sys.timerStop(val, …)
关闭定时器
- 参数
| 传入值类型 | 释义 |
|---|---|
| param | val 值为number时,识别为定时器ID,值为回调函数时,需要传参数 |
| param | … val值为函数时,函数的可变参数 |
- 返回值
无
- 例子
timerStop(1)sys.timerStopAll(fnc)
关闭同一回调函数的所有定时器
- 参数
| 传入值类型 | 释义 |
|---|---|
| param | fnc 定时器回调函数 |
- 返回值
无
- 例子
timerStopAll(cbFnc)sys.timerStart(fnc, ms, …)
开启一个定时器
- 参数
| 传入值类型 | 释义 |
|---|---|
| param | fnc 定时器回调函数 |
| number | ms 整数,最大定时126322567毫秒 |
| param | … 可变参数 fnc的参数 |
- 返回值
number 定时器ID,如果失败,返回nil
- 例子
无
sys.timerLoopStart(fnc, ms, …)
开启一个循环定时器
- 参数
| 传入值类型 | 释义 |
|---|---|
| param | fnc 定时器回调函数 |
| number | ms 整数,最大定时126322567毫秒 |
| param | … 可变参数 fnc的参数 |
- 返回值
number 定时器ID,如果失败,返回nil
- 例子
无
sys.timerIsActive(val, …)
判断某个定时器是否处于开启状态
- 参数
| 传入值类型 | 释义 |
|---|---|
| param | val 有两种形式 一种是开启定时器时返回的定时器id,此形式时不需要再传入可变参数…就能唯一标记一个定时器 另一种是开启定时器时的回调函数,此形式时必须再传入可变参数…才能唯一标记一个定时器 |
| param | … 可变参数 |
- 返回值
number 开启状态返回true,否则nil
- 例子
无
sys.subscribe(id, callback)
订阅消息
- 参数
| 传入值类型 | 释义 |
|---|---|
| param | id 消息id |
| param | callback 消息回调处理 |
- 返回值
无
- 例子
subscribe("NET_STATUS_IND", callback)sys.unsubscribe(id, callback)
取消订阅消息
- 参数
| 传入值类型 | 释义 |
|---|---|
| param | id 消息id |
| param | callback 消息回调处理 |
- 返回值
无
- 例子
unsubscribe("NET_STATUS_IND", callback)sys.publish(…)
发布内部消息,存储在内部消息队列中
- 参数
| 传入值类型 | 释义 |
|---|---|
| param | … 可变参数,用户自定义 |
- 返回值
无
- 例子
publish("NET_STATUS_IND")sys.run()
run()从底层获取core消息并及时处理相关消息,查询定时器并调度各注册成功的任务线程运行和挂起
- 参数
无
- 返回值
无
- 例子
sys.run()