下载 App

如何解决协程冲突的问题

2023/07/20523 浏览综合
有时候你们会遇到这种报错cannot wrap coroutine by main thread!!!
(即使现在没遇到,以后也会遇到的[嗒啦啦4_坏笑]
意思是主线程中不能包裹协程。
协程是啥呢,百度一下虽然能得到结果,但有些没有基础的萌新可能看不懂。
但我们不需要懂,只需要知道,当发生这种错误的时候,如何解决就可以了。
你只需要理解,这个报错是告诉你,一段语句中包含了一个协程,但这段语句是不能包含协程的。
那怎么办呢?办法就是把这个协程分离出去。
如何分离这个协程呢?
首先,要找到这个协程在哪里。报错会告诉你哪里包含了这个协程。比如下面这个报错,就告诉我在我的函数“广告云处理”中,包含了这个协程:
common/base/co.lua:41: cannot wrap coroutine by main thread!!!
stack traceback:
[C]: in function 'error'
common/base/co.lua:41: in function <common/base/co.lua:37>
(...tail calls...)
tds_score/use_mysql.lua:125: in field 'commit'
common/base/tds_score.lua:21: in method 'commit'
array_ec1b/trigger_module_main.lua:9486: in method '广告云处理'
array_ec1b/trigger_module_main.lua:9520: in upvalue 'cb'
common/base/ad/init.lua:18: in function <common/base/ad/init.lua:15>
然后,重点来了,如何把这个协程分离?
很简单,自定义一个事件A,在原来执行这个协程的地方,删掉执行协程的语句,发送这个事件A。
再然后,新建一个事件A的触发器,在这个触发器里执行这个协程。
比如下图,我新建了一个“广告奖励事件”,并在原来执行广告云处理的地方,发送这个事件:
TapTap
红框处原来执行了广告云处理等包含协程的语句
然后我新建了一个监听“广告奖励事件”的触发器:
TapTap
之前写在上上图红框中的语句都移到了这个触发器里
这样,我们就通过发送自定义事件,把协程从主线程中分离了出来。
总结一下:发送自定义事件,然后用触发器监听这个事件,就可以从主线程中分离出相应的协程。
你学费了吗?
星火编辑器客户端物品获取属性值的方法截图
星火编辑器客户端物品获取属性值的方法
物品添加属性分两种情况 1:设置额外属性 2:添加词缀 各有各的优缺点。 本次主要讲的是添加词缀如何在客户端获取属性值。 第一种情况:词缀buff里的属性值是设置好的固定值。 这类添加给物品后,在客户端获取就很容易。 因为添加的词缀是“装备”词缀,只需要遍历指定的装备词缀列表这条语句,获取到buff_id 再直接将buff_id通过转化成(数编表:buff),再对数编表buff里的属性修改里去获取
9 赞
35 回复
新版的背包存档截图
新版的背包存档
舍弃老版超长代码逻辑还不好用的背包存档。想多少个格子就多少个格子不用一个格子创建一个变量,不用写一堆繁琐重复的代码。适用性更强,支持恢复到指定格子,多背包恢复 主要实现核心围绕云变量表这个类型变量来进行处理、获取用户背包栏,循环背包栏获取指定背包栏的物品存入云变量表,然后提交。 读取的话反之也是获取的云变量赋值给云变量表,循环读取背包栏并且获取格子,在将物品放入指定格子 最后附上demo地址 h
36 赞
5 回复
无须申请,星火编辑器现已公测开放下载截图
无须申请,星火编辑器现已公测开放下载
—————————————————— 各位关注星火编辑器的小伙伴: 感谢大家一直以来对编辑器支持! 破晓已去,曙光降临! 星火编辑器现已开启公测! · 关于下载和资格申请 现已无需申请,请去下面的官方首页直接下载! 缘起测试是星火编辑器自诞生以来第一次对外测试! 从2022年八月开始到十一月,历时三个月。 缘起之后缘聚测试,历时又七个月! 缘聚之后,破晓降临,历时又十二个月! 曾经微弱的星火现已渐
官方
325 赞
375 回复
22:58
星火写轮眼-技能系列006-刀塔2-双头龙截图
星火写轮眼-技能系列006-刀塔2-双头龙
星火写轮眼-技能系列006-刀塔2-双头龙
2 赞
2 回复
9月星火编辑器社区教程汇总&答疑结算&贡献度公示
星火编辑器『生态贡献度』是面向广大星火编辑器开发者的一种特别积分。贡献度可以 1比1 提现成现金,也可以 1比2 抵扣服务器成本。此外,对于有游戏上线的开发者,历史累计获得的贡献度越多,可以获得越多的免审次数。 更多细节详见:生态贡献度 | 星火编辑器文档- 全部教程可以前往汇总文档中查看【腾讯文档】星火编辑器生态贡献度-星火编辑器投稿案例公示墙 诗雨 + 1500贡献度 「自制卡牌游戏DIY」制
官方
17 赞
2 回复
02:24
2022 TapTap 游戏发布会|星火编辑器截图
2022 TapTap 游戏发布会|星火编辑器
官方
88 赞
25 回复
登陆失败,nil 的解决办法
卸载tap重新安装即可。
官方
16 赞
4 回复
欢迎提建议,都发在本帖下面,Q群158056266
由于论坛帖子顺序乱,请把所有想法都发在本贴下面,我会每条都看的。
精华
5 赞
88 回复
攻略
1、绿宝石用途?绿宝石可以在商城购买抽奖券,金币、体力。绿宝石通过充值的紫晶购买,vip奖励和双卡均送。2、抽奖券用途:抽奖券可以用来抽取英雄碎片和藏品。个人感觉抽奖券主要用来抽藏品提升最大,英雄等级将辉光升到20就行了。氪佬随意。3、如何离线挂机?离线挂机只能在金币和材料区使用,收益与下线的地方收益相关,尽可能站在紫色区域点击挂机再下线。4、什么是对战地图?对战地图是第四个地图,每天偶数点整点刷
官方
79 赞
54 回复
无法进入游戏的把tap更新到最新版本试试
如题
官方
24 赞
12 回复