Unity协程的坑

Posted yucode

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity协程的坑相关的知识,希望对你有一定的参考价值。

unity终止协程提供了  StopAllCoroutines() 和 StopCoroutines() 两个方法, 但是都只能终止该文件内的 IEnumerator.
并且具体使用有点坑, 见如下实验:
 
结论:
单独终止xxx协程, 必须以 StartCoroutine("xxx") 开启, 以StopCoroutine("xxx")方式关闭.
 
Test1:
 技术分享图片     
 
Test1 Run:
技术分享图片
 
Test1结果:
     成功停止了SayWorld协程.
 
 
Test2:
 
技术分享图片
 
Test2 Run:
技术分享图片
 
Test2结果:
     这种写法并不能终止SayWorld协程.
 
Test3:
技术分享图片
 
Test3 Run:
技术分享图片
 
Test3 结果:
     这种方式也不能终止协程SayWorld.
 
 
猜测:
终止xxx协程, 必须以 StartCoroutine("xxx") 开启, 以StopCoroutine("xxx")方式关闭.
 
Test4:
 
技术分享图片
 
Test4 Run:
 
技术分享图片
 
Test4 结果:
     跟预判一致, 实验结果成立.
 
 
 

以上是关于Unity协程的坑的主要内容,如果未能解决你的问题,请参考以下文章

unity如何停止不用字符串方式开启协程的方法

Unity 之 关于停止协程的五种方式解析

Unity 之 关于停止协程的五种方式解析

一个Unity协程的队列方法-可方便排序执行顺序只能

Unity3D 协程的介绍和使用

Unity中的协程用法以及注意事项