【问题标题】:JMH-Benchmark methods with string parameters带有字符串参数的 JMH-Benchmark 方法
【发布时间】:2019-08-21 10:49:11
【问题描述】:

如何在 JMH 中对来自其他类的具有字符串参数的方法进行基准测试?

@Benchmark 
@BenchmarkMode(Mode.All)
@Warmup(iterations = 5, time = 1)
@Measurement(iterations = 2, time = 1)
public refType getOrAdd(String refTypeName)
{
   return nameClass.containsValue(refTypeName)
}

当我编译时,我收到以下错误: 方法参数应该是@State 类

【问题讨论】:

    标签: jmh


    【解决方案1】:

    想一想:JMH 应该如何知道使用什么值来调用 @Benchmark 方法?无论调用getOrAdd 方法应该向它提供数据,然后调用者应该是@Benchmark。或者,它应该是 JMH 知道并自行初始化的东西,例如带有参数的 @State 类,正如编译错误所暗示的那样。

    如果不查看其余代码,很难看到您想要完成的任务。请查看如何创建 MCVE。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-06-08
      • 2014-03-23
      • 1970-01-01
      • 1970-01-01
      • 2016-06-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多