合宙LuatOS中8910API新增的sysplus接口的使用方法

LuatOS中,8910 API新增的sysplus接口主要用于Luat协程调度框架,它提供了一系列功能强大的接口来管理和调度协程任务,从而优化程序的执行效率和响应性。

具体来说,sysplus接口的主要用途包括:

  1. 任务创建与初始化:通过sysplus.taskInitEx(fun, taskName, cbFun, ...)接口,用户可以创建一个新的任务线程,并在模块的最末行调用该函数来注册模块中的任务函数。这样,当main.lua导入该模块时,这些任务就会被自动初始化并准备执行。

  2. 任务删除sysplus.taskDel(taskName)接口允许用户删除之前通过taskInitEx创建的任务线程。这有助于管理任务的生命周期,避免不必要的资源占用。

  3. 消息等待与接收sysplus.waitMsg(taskName, target, ms)接口允许任务等待并接收一个目标消息。用户可以指定任务名称、目标消息和等待的超时时间(以毫秒为单位)。如果在指定的时间内成功接收到目标消息,则返回该消息;如果超时,则返回false。

  4. 消息发送sysplus.sendMsg(taskName, param1, param2, param3, param4)接口允许用户向指定的目标任务发送一个消息。用户可以传递最多四个参数给目标任务。如果消息成功发送,则返回true;否则,返回false。

这些接口共同构成了一个灵活的协程调度系统,使得开发者能够更加高效地管理和调度程序中的任务,提高程序的并发性和响应性。

一、创建一个任务线程

sysplus.taskInitEx(fun, taskName, cbFun, …)

创建一个任务线程,在模块最末行调用该函数并注册模块中的任务函数,main.lua导入该模块即可

  • 参数

  • 返回值

co 返回该任务的线程号

  • 例子
sysplus.taskInitEx(task1,'a',callback)

二、删除由taskInitEx创建的任务线程

sysplus.taskDel(taskName)

  • 参数

 

  • 返回值

  • 例子
sysplus.taskDel('a')

三、等待接收一个目标消息

sysplus.waitMsg(taskName, target, ms)

  • 参数

 

  • 返回值

msg or false 成功返回table型的msg,超时返回false

  • 例子
sysplus.waitMsg('a', 'b', 1000)

四、向目标任务发送一个消息

sysplus.sendMsg(taskName, param1, param2, param3, param4)

  • 参数

  • 返回值

true or false 成功返回true

  • 例子
sysplus.sendMsg('a', 'b')


 

 详细资料请点击: www.openluat.com 

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值