0

我有一个在屏幕上绘制图块的方法,在这个方法中调用了同一个类中的一个名为 drawFloor 的方法,它可以绘制特定的图块。

在外部方法中,我在 drawFloor 调用的正上方启动了一个秒表,并在调用的正下方停止了它,我得到的时间是 2.4 毫秒。

然后我将秒表放入实际的drawFloor方法本身,使秒表体现了方法中的所有代码,我得到的时间是1.9毫秒。

我认为唯一可以及时做出这种改变的是参数的传递,我不明白为什么它这么贵。它只传递两个参数,一个传递给一个名为“camera”的自定义类,另一个传递给一个精灵批处理。

4

1 回答 1

8

不,它真的没那么贵。几乎可以肯定,这只是您的测量结果的差异。良好的微基准测试很难;完全有可能你做了一些改变事情的其他事情,或者你的机器可能只是不太忙于做其他事情。

方法调用和参数传递并不昂贵——当然不是半毫秒。

于 2012-08-22T18:47:21.083 回答