我一直对我的简单游戏需要运行感兴趣所以我使用了Netbeans Java Profiler(Java 1.7),我可以在“Hot Spots”选项卡中看到“Self Time”和“Invocations”列。
例如,我的渲染方法有:
自拍时间:1025毫秒
调用:2311
所以,如果我理解得很好,它实际上是否意味着所有渲染方法调用的总时间总和为1025毫秒,一个方法执行的平均时间为1025/2311 = 0.44毫秒< /强>
如果是这样,我可以强制IDE显示平均时间而不是总时间吗?
答案 0 :(得分:20)
通常,&#34;自我时间&#34;测量 in 方法体所花费的时间 - 不包括在它调用的方法中花费的时间。例如,假设您有一个简单的方法来检索已排序的用户getUsers
,该用户调用了两种不会自行进行任何其他调用的方法。
UserList getUsers() {
return sortUsers(loadUsers());
}
由于getUsers
不起作用,即使调用该方法很昂贵,其自身时间也会非常低。
Method Self Time Call Time
----------- --------- ---------
getUsers 3 ms 1,184 ms
loadUsers 923 ms 923 ms
sortUsers 258 ms 258 ms
这是基于我使用的其他配置文件 - 而不是NetBeans。希望有人可以为NetBeans本身确认或否认这一点。