哪个更快? (在Unity中的foreach循环和更新)

时间:2014-11-15 00:44:23

标签: c# loops unity3d

我有24种方法需要在更新过程中随时运行,因为它们计算必要的数学并且不可能不这样做。

然而,它是一个附加到24个不同对象的类,所有对象都赋予变量不同的值。

我很好奇,如果使用foreach循环迭代每个对象并以每秒50帧的速度运行他们的方法或者让所有24个对象以每秒30帧的速度运行更新会更快吗?

我试图自己对它进行基准测试,看看我是否能找到比另一个更快的速度。逻辑规定循环会更快但我不知道。

1 个答案:

答案 0 :(得分:0)

monobehaviour中的Update方法实际上并不是每个对象的线程。这个过程是连续的;像这样的东西:

foreach GameObject >
    Awake
foreach GameObject >
    Start
main game loop >
  foreach GameObject >
    Update

blah blah blah

为每个人做自己而不是依赖更新的时间是微不足道的。