这才刚刚学完多线程,最近在知乎https://zhuanlan.zhihu.com/p/...又看到协程这个概念,但是文章讲的我不明不白,而且前面只提到了协程相比多线程的三个优点,请问协程究竟是什么?他各有什么优缺点?
这才刚刚学完多线程,最近在知乎https://zhuanlan.zhihu.com/p/...又看到协程这个概念,但是文章讲的我不明不白,而且前面只提到了协程相比多线程的三个优点,请问协程究竟是什么?他各有什么优缺点?
def 协程1():
pass
def 协程2():
pass
def 协程3():
pass
def 协程n():
pass
while 1:
协程1()
协程2()
协程3()
协程n()
协程就是一个个函数,然后死循环调用,
以上就是协程的基本思想。没什么神秘的~
需要配合异步IO使用,避免阻塞~
15 回答8.4k 阅读
7 回答5.3k 阅读
6 回答6.9k 阅读✓ 已解决
8 回答6.2k 阅读
3 回答2k 阅读✓ 已解决
4 回答4.4k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
协程类似于线程, 但是线程是操作系统底层提供的,而协程是平台自己提供的。
协程是基于线程的,一个协程库底层还是使用的操作系统的线程来支持,然后这个库自己完成任务调度的事情,而不依赖于系统的调度。
协程的优点你贴的链接里已经说了,但是缺点就是实现比较复杂,并且实际性能会低于直接使用线程。