V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
V2EX  ›  Pantheoon  ›  全部回复第 11 页 / 共 11 页
回复总数  206
1 ... 2  3  4  5  6  7  8  9  10  11  
2022 年 9 月 17 日
回复了 Pantheoon 创建的主题 酷工作 [上海/重庆]阿维塔(长安旗下)招聘啦~
@noparking188 你投了吗?我这边没有看到你投递的记录
2022 年 9 月 16 日
回复了 714105382 创建的主题 Kotlin Kotlin 的协程是真协程吗?被 b 站博主搞蒙了
如果是通过回调的方式,除了 success 方法,还有一个 error 方法
doSth(xxx,new Listener(){
success(){}
error(){}
})
但是 kotlin 里面回调的语法是没有处理 error 的,所以它又搞了一堆异常机制,异常在协程里咋传播的,然后咋处理,设计的还挺复杂
2022 年 9 月 16 日
回复了 714105382 创建的主题 Kotlin Kotlin 的协程是真协程吗?被 b 站博主搞蒙了
其实就是回调,没那么难理解,举个例子:
doSth(xxx,new Listener(){
success(){}
})
success 就是写在回调里面的,这种方式一个是比较丑陋,第二个是会有回调地狱的问题,doSth 可以跑在主线程,success 可以跑在子线程里面,后面为了解决丑陋的问题,就有了 await 这个关键字,js 和 c#都有,语法就变成了这样:
await doSth()
success()
看到没有,如果有 await 他的语法是等价于上面那种东西的,doSth 可以跑在主线程,success 跑在了子线程里面,也就是用同步的方式写异步代码,线程发生了切换,但执行的顺序是同步的,本质上是回调
然后到了 kotlin,首先,kotlin 吹嘘协程是对开发产生了误导,他的本质其实就是类似 await,通过语法把回调屏蔽掉:
launch{
doSth()
success()
}
suspend doSth()
而 suspend 关键字就是类似于 await,async 的 async 一样,其实就是打个标记,告诉编译器,后面可以加回调,当线程执行 success 时,doSth 方法没有被执行,也就是所谓的挂起来了,而添加回调的方式叫做 continuation,也就是反编译后是类似这样的语法
doSth().continuation(success())
大概这样子
2022 年 8 月 18 日
回复了 quietDown 创建的主题 职场话题 [咨询] 如何提高英语进入外企
多多上面有英语一对一的课程,如果不介意口音的话,可以选择菲律宾老师,很便宜
以前喜欢买纸质书,翻着看有感觉,后来搬了几次家,实在搬累了,大概有个四五十本吧,然后全卖掉了,现在都是找电子的看,纸质书还有个坏处就是除非买的很明确,不然很容易被坑,被书的内容坑
2019 年 9 月 29 日
回复了 MrCurly 创建的主题 程序员 想吃程序员这碗饭了,还希望过来人给点建议
要建议就是别吃
1 ... 2  3  4  5  6  7  8  9  10  11  
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   903 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 19ms · UTC 20:21 · PVG 04:21 · LAX 13:21 · JFK 16:21
♥ Do have faith in what you're doing.