协同
1、协同必须在 MonoBehaviour 继承类中启动
2、协同定义随便,只要在 Unity 引擎内的什么类中都可以定义
3、协同一旦启动它会立即执行协同函数的第一段,所以你尽量不要把负荷很大的代码写在第一段里
4、协同除了第一次启动会立即执行外,其他时候都是在 Update 函数之后
5、协同是假的多线程,所以它可以无条件访问成员级变量和函数,无需线程互斥
6、协同函数中定义变量是协同函数全局的
7、协同函数中的代码都是过程化的,没有面向对象的概念
8、不要在循环中调用协同方法
9、事件函数也可以改写成协同方法
IEnumerator Start()
{
}
IEnumerator OnTriggerEnter(Collider col)
{
}
10、在协同中可以调用其他协同方法
StartCoroutine(Run());
yield return StartCoroutine(Run());