北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
楼主: ltblue

还得求助啊,异步果然是大坑......

[复制链接]
 楼主| 发表于 2015-5-27 16:02:46 | 显示全部楼层
所以你需要的是做一个状态系统的模块……不用和异步/回调干架……
jarlyyn 发表于 2015-5-27 02:51 PM



老实说,”异步“、”回调“两个概念我还是不太懂,尤其是回调
异步大概明白,多个线程就是异步,一条道跑到黑就不是异步
回调是什么意思呢?貌似我原来理解的不对......
我本来理解,一路return就是回调了......看来不是
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2015-5-27 16:04:19 | 显示全部楼层
老实说,”异步“、”回调“两个概念我还是不太懂,尤其是回调
异步大概明白,多个线程就是异步,一 ...
ltblue 发表于 2015-5-27 04:02 PM



  回调就是把一个函数放在变量里传给接口,让接口在执行完之后调用这个函数做后续处理。
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2015-5-27 18:07:05 | 显示全部楼层
回调就是把一个函数放在变量里传给接口,让接口在执行完之后调用这个函数做后续处理。
jarlyyn 发表于 2015-5-27 04:04 PM



那我从没用过回调
我的所有函数都是以变量,至少是数组做参数的,没有以地址做参数的
我是basic的底子,后来上学学了点c的皮毛,不过一直对指针不感冒
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2015-5-27 18:09:22 | 显示全部楼层
回复 30# jarlyyn


耗时问题不是问题
我的问题就是,一直得查状态,每个函数都得查

比如
fun a()
b()
XXX
end

fun b()
c()
XXX
end

fun c()
查看状态
XXX
end

在查看状态的时候,如果发现状态需要取消所有代码,返回到fun a(),得怎么做?
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2015-5-28 13:02:36 | 显示全部楼层
callback
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2015-5-28 14:38:20 | 显示全部楼层
callback
silvent 发表于 2015-5-28 01:02 PM



call back是啥?貌似没有这个命令啊
lua有吗?又或者你用的js?
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2015-5-28 21:56:57 | 显示全部楼层
本帖最后由 oolong 于 2015-5-28 09:58 PM 编辑

你是书剑哪个号,我书剑oolong做cmud机器啊。书剑mc好多大牛作品呢,效率最高就是px版,mc模拟462,然后renlai版,秋猫版是lua大师,还有传说的长三版…程序员强迫症。估计我是全中国cmud第一人了
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2015-5-28 22:06:51 | 显示全部楼层
回复 34# ltblue


    这种情况你为啥不用返回值?lua的返回值是一个优势
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2015-5-29 11:28:44 | 显示全部楼层
你是书剑哪个号,我书剑oolong做cmud机器啊。书剑mc好多大牛作品呢,效率最高就是px版,mc模拟462 ...
oolong 发表于 2015-5-28 09:56 PM



我手头有个秋猫的,不过看不懂......还是自己写代码能看懂,从来就看不懂别人的代码......
而且很多命令我都不明白,比如:,经常self:XXX
我不会面向对象,所以写的东西有点莫名其妙的
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2015-5-29 11:38:16 | 显示全部楼层
回复  ltblue


    这种情况你为啥不用返回值?lua的返回值是一个优势
chatbot 发表于 2015-5-28 10:06 PM



返回值用了啊,最早用的就是返回值
但是返回值需要判断啊
比如调用一个函数a(),你的写

local o=a()
if o==“abort” then
return o
end
XXX下面的语句

调用一次无所谓,你每调用一个函数,只要这个函数“耗时”,不是print这种,你就得以这个格式写一遍。碰到这个函数本来就有返回值,你还得多加一个返回值来确定是否“abort”。
然后代码里就到处充斥着
if o==“abort” then
return o
end
满地都是......

所以我才发的这个帖子啊......
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|北大侠客行MUD ( 京ICP备16065414号-1 )

GMT+8, 2024-11-1 01:31 PM , Processed in 0.011278 second(s), 13 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表