• 雨课堂知识点总结(十七)


    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

  • 相关阅读:
    Mac 配置前端基本环境
    sass安装 使用
    SVG
    css规范
    [转载] Solaris命令使用
    solaris 10 基本使用
    dos taskkill 命令
    servicemix-3.2.1 内置的服务引擎和绑定组件
    servicemix-3.2.1 部署异常
    解析XML内容到User对象
  • 原文地址:https://www.cnblogs.com/HIT-ryp/p/10905638.html
Copyright © 2020-2023  润新知