协程概念 先介绍一点协程的概念,如果你已经理解和掌握了相关的背景知识就可以跳过这个章节(或者快速浏览下,也许我们有些观念不一致可以讨论)。这里我想稍微聊的深入一点,这涉及到入门后遇到复杂的协程问题时能不能正确的理解并解决问题。 协程 (Coroutines),也被称为微线程,纤程。一般指一个可以被暂停和恢复执行的逻辑体。一个普通的函数有 2 个常规的操作和行为: 调用 (Call)和 返回 (Return)。当调用这个函数的时候,会暂停当前的执行,跳转到这个函数的起始位置去执行。当函数执行完成后会返回结果(或者抛出异常)。这个调用过程通常是“一次性”的,再次调用这个函数又是一次独立的行为。但是协程不是,协程的操作和行为是: 调用/创建 (Create)、 暂停/挂起 (Suspend)、 恢复执行 ([Resume]())和 销毁 (Destroy)。协程可以允许这个被调用的函数执行到某个位置之后暂时保留自己的临时信息并挂起。在后面的某个时间点可以再回到当时执行的位置和状态继续执行。所以从某种意义上可以说协程是普通函...