8.4 动态性能分析方法与工具

1. 以下关于Dynamic Program

Analysis的说法,不正确的是__
A 根据程序执行的过程与结果,分析代码在时空性能方面所展现出的性质
B 对程序执行的性能没有影响
C 可用来发现程序中的“热点”语句,即哪些语句被频繁执行
D 只需执行次,即可比测试更容易发现程序中的性能弱点和bug
E 能够发现程序中各种不同类型的object分别占用了多少内存空间
正确答案:BD

2.关于profiling的三种策略,说法不正确的是

A 采用代码注入的策略,对程序性能的度量最为准确
B 采用Instrumented VM的策略,需针对不同的VM分别使用不同的profiling工具
C 采用Sampling的策略,对程序执行性能的影响最大
D 采用Instrumented VM和Sampling的策略,均不需对程序代码进行修改
E 采用代码注入的策略,不可能对目标代码进行动态注入
正确答案:ACE

3. 关于Java提供的若Fprofiling工具,说法不正确的是_

A 有工具可以获取Java程序运行时JVM管理的各heap区域的动态占用情况
B 有工具可以得知指定的Java程序所采用的GC策略
C 有工具可以对正在运行的Java程序的JVM内存配置进行参数的动态设置
D 即使不使用这些工具,当Java程序抛出0utOfMemoryError时,JVM也能够自动导出内存溢出时刻的heap dump
E 有工具可以获取当前时刻Java程序主线程的call stack的状态

正确答案:CD

4.

从该结果看,在第一次GC前后,survivor space的占用比例增加了_ old generation的占用比例增加了_
A 91.03%,1. 98%
B -5.99%,1.39%
C -94.55%,-97 .02%
D 91.03%,0.37%

正确答案:B

5.不能导出某个Java迸程的heap dump文件的是_

A jmap
B jcmd
C jconsole
D jstack
E jhat
F Eclipse Memory Analyzer

正确答案: DEF

6.使用profiling工具来监控你的Lab3程序时,发现heap中出现了大量的PhysicalObject对象实例,占用了大量内存。可能的原因是___

A: 你的Lab3将Physicalobject设计A 为mutable,并对其采取了防御式拷贝策略以避免表示泄漏
B: 本次运行读入了一个大文件,故B 构造Circularorbi t对象时不得不构造大量Physicalobject对象
C: 导出heap的时刻之前较长时间没有进行GC,故大量无活性的Physica lobject仍处于内存中
D:你的Lab3对Physicalobject的生成(new)采用了"静态工厂”模式,导致JVM无法获取各
Physicalobject对象的活性而无法及时GC

正确答案:ABC

7.对代码进行dynamic profiling,不需要在__时候进行

A: ADT的初始版本完成后(包括完成了Rep、方法、AF、RI、Spec、各方法的代码)

B:ADT测试完成后(根据spec设计测试用例,用JUnit执行测试用例并获得结果后)
每次向Git进行一次commit之前

C: ADT迭代开发结束,除性能之外的其他外部和内部质量指标的优化均已经达到期望

D: 交付用户之前,发现程序运行缓慢,与期望不符
正确答案:ABC

转载于:https://www.cnblogs.com/HIT-ryp/p/10905638.html

雨课堂知识点总结(十七)相关推荐

  1. 雨课堂知识点总结(七)

    3.1 1.Java中的Primitive Type(int,char,boolean等)和Object Type(String,Boolean,Calendar)的差异是 前者在Stack中分配内存 ...

  2. 雨课堂知识点总结(十一)

    3.4Object-Oriented Programming(OOP) 1.关于static和final的说法,正确的是: static类型的方法,调用时无需创建类的实例对象,可直接通过类名使用 被声 ...

  3. 雨课堂知识点总结(十二)

    3.5 Equality 1. ADT的equals( )需要满足的三个性质是[填空1]性.[填空2]性. [填空3]性 答案: 自反性;对称性;传递性; 2. 以下针对ADT等价性的说法,不正确的是 ...

  4. 雨课堂知识点总结(二十)

    8-2 内存性能与垃圾回收 第一题 关于内存管理的三种模式(static.stack.heap) ,不正确的是 A Static在编译阶段为各变量分配内存,不支持运行时变量扩展内存,但支持运行时为新变 ...

  5. 雨课堂知识点总结(十三)

    5.1可复用性 1. Programming for reuseProgramming with reuse二者的区别: for:开发可复用的软件;with:用可复用的软件开发自己的软件 for:难点 ...

  6. 雨课堂知识点总结(十八)

    10-1 Concurrency 第一题 以下是计算机系统中的concurrency现象? A手机上的一个App通过5G网络访问云端数据 B四核CPU,执行多道程序 C使用Observer设计模式的J ...

  7. 雨课堂知识点总结(八)

    3.1(B) 1,关于mutable和immutable的说法正确的是: 所有的简单数据类型和所有相对应的封装类(Integer,Double,Boolean等)都是immutable的 所有数组都是 ...

  8. 雨课堂知识点总结(十)

    3.3ADT 1.类WordList有四个方法,根据其方法定义来确定其类型 <1>public WordList(List<String> words) <2>pu ...

  9. 雨课堂知识点总结(九)

    3.2 Specification 1.两个方法具有"行为等价性(behavior equivalence)": 站在客户端的角度看,它们实现相同的功能 站在客户端的角度看,它们可 ...

最新文章

  1. 阿里云企业服务器配置选择教程!
  2. Wireshark的https代理抓包(whistle中间人代理)
  3. 学习官方示例 - SysUtils.EncodeDate、EncodeTime、StrToDate、StrToTime、StrToDateTime
  4. 多线程访问全局变量和局部变量剖析
  5. python用for循环求10的因数_python for循环练习(初级)
  6. redis:集群配置
  7. 1010 Radix (25 分) 超级坑恶魔坑
  8. 智能优化算法:萤火虫算法-附代码
  9. 软考嵌入式系统设计师
  10. 移动通信网络规划:多址技术
  11. 虚拟服务器lan网段地址,lan侧服务器ip地址
  12. 蓝桥杯单片机决赛(国赛)第十一届题目加代码
  13. Binwalk的安装和使用
  14. .net core webAPI 使其同时支持返回json或xml
  15. C# 导入EXCEL 报错外部表不是预期的格式错误
  16. numpy.core.multiarray failed to impor
  17. vue项目中使用a标签下载视频文件
  18. 2013级学生的学年总结链接
  19. BaziPickView 八字时间选择器、
  20. DockWidget

热门文章

  1. 学习响应式BootStrap来写融职教育网站,Bootsrtap第三天nav布局
  2. java web空白xml_【图片】我做的JSP+Servlet程序,插入信息提交后出现空白页面,不知道是…【java吧】_百度贴吧...
  3. JS页面跳转的各种形式
  4. input组件未在Form内,清空输入数据
  5. Docker(二)基本操作命令
  6. STL - Unorderedset - 自定义哈希函数
  7. 一次合同违约复盘(一)
  8. Ember版本小小结
  9. xmake高级特性之自定义选项
  10. 使用简介EntityFramework6.0