我一直对时间感兴趣,因为我的简单游戏需要运行,因此我使用了Netbeans Java Profiler(Java 1.7),并且可以在“热点”选项卡中看到“Self Time”和“Invocations”列。Netbeans分析器的“自我时间”实际上意味着什么?
例如,我的渲染方法有:
自用时间 1025毫秒
的调用:2311
所以,如果我理解不错,它实际上意味着TOTAL ALL渲染方法调用的时间总计为1025毫秒,一个方法执行的平均时间为1025/2311 = 0,44毫秒?
如果是这样,我可以强制IDE显示平均时间而不是总时间?
如果您的目标是减少总数,为什么要显示平均值? – 2012-07-20 15:10:39
那么,如果我在一个方法中实现了一个游戏循环,我可能会想看看一次执行(帧)需要多少时间... – 2012-07-20 15:28:29
是的,您需要划分。然而,在检测模式下运行profiler(或者实际上,运行它)会影响性能(如阻止JIT优化),并且不是非常有用。手动计时/基准测试(例如,调用System.nanoTime)可能会更好,但也存在问题。 – 2015-04-02 18:23:39