http://angryant.com/2010/01/14/optimising-coroutine-yielding-in-c/
对于如下代码:
private IEnumerator DoFadeAlphaIn ()
{
while (m_Alpha < 1.0f)
{
m_Alpha += Time.deltaTime;
yield return 0;
}
m_Alpha = 1.0f;
}Unity中的coroutine通常会配合yield使用;
某些编写协程代码的人会使用yield return 0来终止协程当前帧的运行,这样会发生值类型0到引用类型null的装箱和拆箱,导致多余空间的产生;
建议使用yield return null替代yield return 0.
本文探讨了在Unity环境中使用Coroutine时,yieldreturn0可能导致的性能问题,并建议使用yieldreturnnull作为替代方案,以避免类型转换带来的额外开销。
1483

被折叠的 条评论
为什么被折叠?



