免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4262 | 回复: 13
打印 上一主题 下一主题

效能测试器(profiler)是什么? [复制链接]

bingziyu_0 该用户已被删除
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-12-02 20:50 |只看该作者 |倒序浏览
提示: 作者被禁止或删除 内容自动屏蔽
bingziyu_0 该用户已被删除
2 [报告]
发表于 2003-12-06 21:32 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
3 [报告]
发表于 2003-12-08 11:19 |只看该作者

效能测试器(profiler)是什么?

java -Xprof
java -Xrunhprof
bingziyu_0 该用户已被删除
4 [报告]
发表于 2003-12-08 21:47 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
5 [报告]
发表于 2003-12-09 21:16 |只看该作者

效能测试器(profiler)是什么?

运行一下 java -Xrunhprof:cpu=y MyTestApp
看看有什么结果。

public class MyTestApp {
  public static void main(String[] args) {
    MyTestApp app=new MyTestApp();
    app.method1();
    app.method2();
  }


  public void method1() {
    for (int i=100000; i>;0; i--) {
      Integer intobj=new Integer(i);
    }
  }

  
  public void method2() {
    for (int i=100000; i>;0; i--) {
      Thread thread=new Thread();
    }
  }

CPU SAMPLES BEGIN (total = 22) Tue Dec 09 23:59:02 2003
rank   self  accum   count trace method
   1 50.00% 50.00%      11     3 java.security.AccessController.getStackAccessControlContext
   2  9.09% 59.09%       2    10 java.lang.Thread.setPriority0
   3  9.09% 68.18%       2     4 MyTestApp.method2
   4  4.55% 72.73%       1     8 java.lang.String.toCharArray
   5  4.55% 77.27%       1     5 java.lang.Integer.toString
   6  4.55% 81.82%       1     9 java.lang.StringBuffer.<init>;
   7  4.55% 86.36%       1     6 java.lang.StringBuffer.toString
   8  4.55% 90.91%       1     7 java.lang.Thread.<init>;
   9  4.55% 95.45%       1     2 MyTestApp.method1
  10  4.55% 100.00%       1    11 java.security.AccessController.getInheritedAccessControlContext
CPU SAMPLES END


method2 用了9.09% CPU时间
method1 用了4.55% CPU时间
bingziyu_0 该用户已被删除
6 [报告]
发表于 2003-12-10 14:38 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
bingziyu_0 该用户已被删除
7 [报告]
发表于 2003-12-10 14:40 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
8 [报告]
发表于 2003-12-10 22:16 |只看该作者

效能测试器(profiler)是什么?

>;>;明白点了,就是用来计算CPU执行效率的呀!
我在运行时只定了CPU时间。java -Xrunhprof:cpu=y MyTestApp 。所以只显示CPU时间的PROFILE。因为这是我们最常用到的。

》》
Integer intobj=new Integer(i);

Thread thread=new Thread();
他们为什么会产生这种差距呢?

这种差距是由表及里java.lang.Thread.setPriority0 引起的。这说明new Thread()调用了setPriority0。

由此可见,PROFILER可以帮你分析那些 METHOD 调用拖了你的程序的后腿。
kircheis 该用户已被删除
9 [报告]
发表于 2003-12-11 13:57 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
10 [报告]
发表于 2003-12-11 14:04 |只看该作者

效能测试器(profiler)是什么?

哪有它的详细介绍资料?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP