# Coroutine

原理: 一个协成方法会在编译的时候,转化成一个类,在使用的时候生成一个对象,使用 DelayedCallManager 来调用。这个有点像timermanager那种感觉。 因为一个对象所有在协成中的局部变量都会成为对象中的变量,所以说如果协成不使用 yeild return ,也就不会释放该对象。在使用该协成时我们就是在使用的时候new一个即可,不需要保存下来。 尽量减少使用....或者说把多个协成合并起来, 在使用一个monobehavior中使用了StartCoroutine开启一个协成,我们把该脚本disable了是无法关闭协成的, • 但是我们把该脚本的GameObject设置SetActive(false)时协成会被关掉, • 当然调用 Destroy该脚本也可以关掉, • 也可以直接调用StopCoroutine

参考:

https://docs.unity3d.com/Manual/BestPracticeUnderstandingPerformanceInUnity3.html (opens new window)

上次更新: 3/23/2021, 8:33:58 AM