jmh源码解析-总体架构

我理解的jmh运行架构图

  1. 生成字节码,字节码负责维护测试的状态和调用被测试的方法
  2. 默认在fork的进程中进行测试,能够配置多个fork进程,以减小偏差
  3. 经过线程池,提交每一个迭代的测试任务,任务执行后,收集结果信息
    4.打印结果信息

个人思考

如图所示
左图.反射消耗的性能在测试代码以外,不会影响被测试方法执行
右图,若是不生成字节码,则会引入反射的性能消耗架构

相关文章
相关标签/搜索