Базовое понимание JMH Benchmark
У меня такой весенний класс:
@Component
@State(Scope.Thread)
public class CalculatorImpl implements Calculator {
public CalculatorImpl() {
System.out.println("Phase 1");
}
@PostConstruct
@Benchmark
public void init() {
System.out.println("Phase 2");
}
}
Я добавил необходимые зависимости maven и плагин и запустил его:
java -jar target/benchmarks.jar
И моя "Фаза 2" печатается в бесконечном цикле. В основном, я просто хочу пример helloworld. Что я сделал не так? Спасибо за ваше время.
1 ответ
Решение
Увидеть hello world
пример здесь http://hg.openjdk.java.net/code-tools/jmh/file/7a25c71b43bf/jmh-samples/src/main/java/org/openjdk/jmh/samples/JMHSample_01_HelloWorld.java
Я полагаю, что в вашем случае вы получили не бесконечный цикл, а очень длинный вызов, возможно, ограниченный или ограниченный по времени скоростью линии печати на вашем терминале. Попробуйте сначала протестировать пустой метод.