程序
 进程 | 主线程(操作Unity相关的对象、组件...) | 
| 子线程 | |
| 子线程 | |
| ... | 
协同程序(Coroutine)
概念:伴随着主线程一起运行的一段程序
注意:协程与协程之间是并行执行,与主线程也是并行执行。
| 创建协程方法 | 返回值关键字IEnumerator | |
| 必须返回yield return |   1、返回对象(有构造的执行构造) 2、等待下一帧继续执行  | |
特殊的yield return
 普通版 | yield return【具体的值】 |   暂停协程 等待下一帧继续执行 执行的时间节点(Update后,FateUpdate之前)  | 
| yield return new WaitForEndOfFrame() |   暂停协程 等待下一帧继续执行 执行的时间节点(OnGUI之后)  | |
 拓展 | yield return new WaitForSeconds(n) |   暂停协程 等待n秒之后继续执行  | 
| yield return new WaitForFixedUpdate() |   暂停协程 等待一个fixed的时间间隔之后继续执行 yield return new WaitForSeconds(0.02)  | |
| yield return StartCoroutine(协程方法) |   暂停协程 等待yield return 的协程执行完了之后继续执行  | 
开启协程
| StartCoroutine | StartCoroutine(协程方法[协程参数]) | |
| StartCoroutine("方法名称") | ||
| StartCoroutine("方法名称",方法参数) |   用这种方法启动 参数只能有一个  | |
停止协程
| StopCoroutine | StopCoroutine(Coroutine) | |
| StopCoroutine(IEnumerator) | ||
| StopCoroutine(string methodName) | 限制:只能停掉用字符串启动的协程 | |
| StopAllCoroutine | 停止所有正在运行的协程 | |
跳出协程
yield break
特殊协程
IEnumerator Start()
简介:Start协程会在游戏开始时自动启动
注意:此协程和Start函数只能存在一个










