通过使用 java 微基准测试 (jmh) 框架,可以比较 java 版本中函数的执行效率。报告可以通过设置环境、创建基准测试、配置基准测试和操作基准测试生成,并显示不同的内容 java 例如,版本中函数的执行时间 java 8 和 java 16。
不同的是怎样的 Java 比较版本之间的函数执行效率?
了解不同 Java 函数执行效率在版本中的差异对应用程序优化至关重要。Java 微基准测试 (JMH) 它是一种流行的框架,用于对抗 Java 微基准测试和比较代码。
1. 设置环境
立即学习“Java免费学习笔记(深入);
首先,在项目中添加 JMH 依赖项:
<dependency> <groupId>org.openjdk.jmh</groupId> <artifactId>jmh-core</artifactId> <version>1.36</version> </dependency>
2. 创建基准测试类别
创建一个 Java 类别包括要比较的基准测试。例如:
import org.openjdk.jmh.annotations.*; @State(Scope.Thread) public class FunctionEfficiencyBenchmark { // 要执行函数的次数 @Param({"1000", "10000", "100000"}) public int iterations; public long sum(int[] arr) { long sum = 0; for (int i : arr) { sum += i; } return sum; } }
3. 配置基准测试
使用 @Benchmark 标记要测量的函数并使用注释 @Warmup 和 @Measurement 配置基准测试操作注释。
@Benchmark @Warmup(iterations = 10) @Measurement(iterations = 10) public void benchmarkSum() { int[] arr = new int[iterations]; for (int i = 0; i < iterations; i++) { arr[i] = i; } sum(arr); }
4. 运行基准测试
生成运行基准测试报告:
mvn clean install java -jar target/benchmarks.jar
5. 实战案例
下表显示了 Java 8 和 Java 16 中 sum 函数的执行时间:
由此可见,Java 16 中 sum 函数执行效率比 Java 8 高。
以上是如何不同的 Java 版本之间的比较函数执行效率?详情请关注图灵教育的其他相关文章!