Kotlion协程 KotlionFlow

知道协程么?

协程的目的是,简化复杂的异步代码逻辑,用同步的代码写出复杂的异步代码逻辑。

协程到底有什么用?

使用协程就可以让我们摆脱因为多线程带来的各种编码上的不便:(主线程和子线程之间的切换)

  • 多线程同步编程可以通过加锁解决数据的线程安全问题,但是加锁会降低程序执行效率,并且锁多了,会有死锁隐患
  • 协程是运行在线程之上的优化产物,或称“微线程”。协程依赖线程运行,复杂的底层逻辑被封装在库内,使用时无需关心所处线程状态
    使用协程,开发者可以自己控制协程的状态(suspend挂起,resume恢复),而不会像线程那样依赖底层调度,时间片争夺。
    一个线程可以跑多个协程,一个协程也可以分段在多个线程上执行
    协程 是 非阻塞的,当前协程挂起之后,所在线程资源并不会浪费,它会去执行其他协程(如果有的话)
    协程 相对于线程这种OS中的稀缺资源,它是极其轻量级的,就算你开一百万个协程,对于系统的压力也不会像大量线程那样大(别说一百万个,linux系统的线程数量上线是1000,超过这个值系统就无法正常运行).
    总之一句话 : 协程的出现,让程序开发者对程序逻辑的掌控提升到了一个新的境界,想象一下,一个函数正在执行,你想让他在某个时刻暂停,然后在另一个时刻继续。利用线程恐怕很难做到。协程中,轻而易举。
  • 使用同步代码实现异步代码
     
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值