协程

今天查询协程的使用方法,找到一些不明觉厉的文章,以后对协程有了深入了解之后再多读几次:

1. https://zhuanlan.zhihu.com/p/146844906 《说说对协程的看法》

2. https://zhuanlan.zhihu.com/p/147608872 《也来谈谈协程》 —— 首推

3. https://blog.csdn.net/weixin_43705457/article/details/106857068 《协程入门》

4. https://blog.youxu.info/2014/12/04/coroutine/ 《协程的历史,现在和未来》

 

协程的几个特点:

1. 不同线程之间是抢占式的;同一线程的不同协程(接下来简称不同协程)之间,只能主动让出CPU而不能被抢占

2. CPU和系统调度感知不到多个协程的存在,调度只发生在线程之间

3. 不同协程之间的执行是串行的;多个协程无法并发,因此协程无法充分利用多CPU的优势 —— 协程也不是为了利用多CPU并行而设计的

4. 使用协程的时候,不必关心多个协程同时访问共享数据的同步问题,因为:协程不能用于并发的情况;协程之间不能并发。

换句话说,如果并发可以提高效率,那就不应该用协程,而应该用线程;如果不可以并发,但是为了逻辑清晰,就不要用线程,而是优先考虑协程。

posted @ 2022-04-12 21:43  moonのsun  阅读(42)  评论(0)    收藏  举报