协程的定义是什么
子程序,或者称为函数,在所有语言中都是层级调用。
子程序调用是通过 栈实现的,一个线程同一时间就是执行一个子程序。
协程本质上也是子程序,协程作为子程序最大的特征是可中断可恢复。
常规子程序 子程序执行完返回把控制权返还给调用这个子程序的上层,让上层继续往下执行,一层套一 层,这就是层级调用。
特征:· 执行完毕才返回· 不可中断协程 协程看上去也是子程序,但执行过程中,在子程序内部可中断,然后转而执行别的子程序, 在适当的时候再返回来接着执行。
特征:可以执行到一半先返回可中断、挂起再次执行可恢复状态不同的语言对协程的实现方式多有不同,但是只要能够在单线程里实现协程的中断恢复这两 个特征那么就是协程。