模块  jdk.jfr
软件包  jdk.jfr.consumer

Class RecordingFile

  • 实现的所有接口
    CloseableAutoCloseable

    public final class RecordingFile
    extends Object
    implements Closeable
    录音文件。

    以下示例显示如何读取和打印录制文件中的所有事件。

       try (RecordingFile recordingFile = new RecordingFile(Paths.get("recording.jfr"))) { while (recordingFile.hasMoreEvents()) { RecordedEvent event = recordingFile.readEvent(); System.out.println(event); } }  
    从以下版本开始:
    9
    • 构造方法详细信息

      • RecordingFile

        public RecordingFile​(Path file)
                      throws IOException
        创建录制文件。
        参数
        file - 要打开的文件的路径,而不是 null
        异常
        IOException - 如果它不是有效的录制文件,或者发生I / O错误
        NoSuchFileException - 如果 file
        SecurityException - 如果存在安全管理器且其 checkRead方法拒绝对该文件的读访问权。
    • 方法详细信息

      • hasMoreEvents

        public boolean hasMoreEvents()
        返回 true如果记录文件中有未读的事件, false否则。
        结果
        true如果录制中存在未读事件, false
      • readEventTypes

        public List<EventType> readEventTypes()
                                       throws IOException
        返回此录制中所有事件类型的列表。
        结果
        事件类型列表,而不是 null
        异常
        IOException - 如果从文件读取时发生I / O错误
        另请参见:
        hasMoreEvents()
      • readAllEvents

        public static List<RecordedEvent> readAllEvents​(Path path)
                                                 throws IOException
        返回文件中所有事件的列表。

        此方法适用于在单个操作中方便读取所有事件的简单情况。 它不适用于读取大文件。

        参数
        path - 文件的路径,而不是 null
        结果
        来自文件的事件为List对象; 是否可修改List是否依赖于实现,因此未指定,不是null
        异常
        IOException - 如果发生I / O错误,则不是Flight Recorder文件或无法解析的JFR文件版本
        SecurityException - 如果存在安全管理器且其 checkRead方法拒绝对该文件的读访问权。