unity 协程的用法

概念:伴随着主线程⼀起运⾏的⼀段程序。
协程与协程之间是并⾏执⾏,与主线程也是并⾏执⾏。
 
协程可以用来计时,例如lol生产野怪,在怪物死亡时调用计时生成野怪的协程,那么这段程序只会在野怪倒计时的时候执行,生成野怪后协程就会关闭,比起直接写在主进程里节省性能。
 
关键字IEnumerator
协程必须返回 yield retrun
 
 
 
yield return 【具体的值】:
        暂停协程
        等待下⼀帧继续执⾏
        执⾏的时间节点 在Update之后 LateUpdate之前
 
 
yield return new WaitForSeconds(n)
        暂停协程
        等待n秒之后继续执⾏

 

yield return new WaitForFixedUpdate()
        暂停协程 等待⼀个fifixed的时间间隔之后继续执⾏
        相当于yield return new WaitForSeconds(0.02)

 

yield return StartCoroutine(协程⽅法);
        暂停协程
        等待yield return 的协程执⾏完了之后继续执⾏本协程
 
 
 
开始协程的方法:
1.StartCoroutine(协程⽅法([协程参数]))
2.StartCoroutine(”⽅法名称”)
3.StartCoroutine(”⽅法名称”,⽅法参数) //⽤这种⽅式启动的协程参数只能是1个

 

停止协程的方法:

1.StopCoroutine(Coroutine)
2.StopCoroutine(IEnumerator)
3.StopCoroutine(string methodName)       //只能停掉,⽤字符串启动的协程
4.StopAllCoroutine 停⽌所有正在运⾏的协程   //一般不用,你可能会停止别人写的协程
 
 
跳出协程需要用 yield break
 
 
特殊协程 IEnumerator Start()
//////Start协程会在游戏开始时⾃动启动
 
 
 
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章