概述
本文来聊聊在Unity开发中很常用的协程。
什么是协程
协程 (Coroutine) 是大部分现代编程环境都提供的一个非常有用的机制。它允许我们把不同时刻发生的行为,在代码中以线性的方式聚合起来。与基于事件与回调的系统相比,以协程方式组织的业务逻辑,可读性相对好一些。
Unity的协程是传统的协程的简化,在主线程内每一帧给定的时间点上,引擎通过一定的调度机制来唤醒和执行满足条件的协程,以实际上的分时串行化执行回避了协程之间的通信问题。而更通俗的定义是在主线程运行的同时开启另一段逻辑处理,来协助当前程序的执行。
有什么用
可以实现简单的计时器、将耗时的操作和复杂的逻辑拆分成几个步骤分散在每一帧去运行等等。
什么时候执行(调用)
在update之后,lateupdate之前,这里贴一张官方的图。
怎么用
个人建议,遇到问题,还是先查看官方文档,从根本上解决问题。官方中文文档
1.创建一个返回值为IEnumerator
的协程片段,协程片段的编写方式可以查看常见用法。
yi