Spec-Zone.ru › OpenJDK 17

Пакет jdk.jfr.consumer

package jdk.jfr.consumer
Этот пакет содержит классы для потребления данных Flight Recorder.

В следующем примере программа выводит гистограмму всех образцов методов в записи.

 public static void main(String[] args) throws IOException {
     if (args.length != 1) {
         System.err.println("Must specify a recording file.");
         return;
     }

     RecordingFile.readAllEvents(Path.of(args[0])).stream()
         .filter(e -> e.getEventType().getName().equals("jdk.ExecutionSample"))
         .map(e -> e.getStackTrace())
         .filter(s -> s != null)
         .map(s -> s.getFrames().get(0))
         .filter(f -> f.isJavaFrame())
         .map(f -> f.getMethod())
         .collect(
             Collectors.groupingBy(m -> m.getType().getName() + "." + m.getName() + " " + m.getDescriptor(),
             Collectors.counting()))
         .entrySet()
         .stream()
         .sorted((a, b) -> b.getValue().compareTo(a.getValue()))
         .forEach(e -> System.out.printf("%8d %s\n", e.getValue(), e.getKey()));
     }
 

Обработка нулевых значений

Все методы определяют, принимают ли они или возвращают null в Javadoc. Обычно это выражается как "not null". Если null параметр используется там, где это запрещено, выбрасывается java.lang.NullPointerException. Если null параметры передаются методу, который выбрасывает другие исключения, такие как java.io.IOException, то java.lang.NullPointerException имеет приоритет, если только Javadoc для метода явно не указывает, как null обрабатывается, то есть, выбрасывая java.lang.IllegalArgumentException.

Since:
9
Пакет Описание
jdk.jfr
Этот пакет предоставляет классы для создания событий и управления Flight Recorder.
Класс Описание
EventStream
Представляет поток событий.
MetadataEvent
Событие, содержащее информацию о типах событий и конфигурациях.
RecordedClass
Записанный Java тип, такой как класс или интерфейс.
RecordedClassLoader
Записанный Java загрузчик классов.
RecordedEvent
Записанное событие.
RecordedFrame
Записанный кадр в стеке вызовов.
RecordedMethod
Записанный метод.
RecordedObject
Сложный тип данных, состоящий из одного или нескольких полей.
RecordedStackTrace
Записанный стек вызовов.
RecordedThread
Записанная нить.
RecordedThreadGroup
Записанная группа Java нитей.
RecordingFile
Файл записи.
RecordingStream
Поток записи генерирует события из текущей JVM (Java Virtual Machine).

© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/jdk.jfr/jdk/jfr/consumer/package-summary.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API