接口 HotSpotDiagnosticMXBean

所有父级接口:
PlatformManagedObject

public interface HotSpotDiagnosticMXBean extends PlatformManagedObject
HotSpot 虚拟机的诊断管理接口。

诊断 MBean 与其他平台 MBean 一样注册到平台 MBeanServer。

用于在 MBeanServer 中唯一标识诊断 MXBean 的 ObjectName 是:

com.sun.management:type=HotSpotDiagnostic
可以通过调用PlatformManagedObject.getObjectName() 方法获取。如果任何输入参数是 null,所有方法都会抛出 NullPointerException,除非另有说明。
参见:
  • 方法详情

    • dumpHeap

      void dumpHeap(String  outputFile, boolean live) throws IOException
      以与 hprof 堆转储相同的格式将堆转储到 outputFile 文件。

      如果从另一个进程远程调用此方法,堆转储输出将写入运行目标 VM 的计算机上名为 outputFile 的文件。如果 outputFile 是相对路径,则它是相对于启动目标 VM 的工作目录的。

      参数:
      outputFile - 系统相关的文件名
      live - 如果仅 true 转储居住对象,即可以从其他人访问的对象
      抛出:
      IOException - 如果 outputFile 已经存在,则无法创建、打开或写入。
      UnsupportedOperationException - 如果不支持此操作。
      IllegalArgumentException - 如果 outputFile 不以“.hprof”后缀结尾。
      NullPointerException - 如果 outputFilenull
      SecurityException - 如果安全管理器存在且其 SecurityManager.checkWrite(java.lang.String) 方法拒绝对命名文件的写访问或调用者没有 ManagmentPermission("control")。
    • getDiagnosticOptions

      List <VMOption > getDiagnosticOptions()
      返回所有诊断选项的 VMOption 对象列表。诊断选项是一个 writeable VM 选项,可以动态设置,主要用于故障排除和诊断。
      返回:
      所有诊断选项的 VMOption 对象列表。
    • getVMOption

      VMOption  getVMOption(String  name)
      为给定名称的 VM 选项返回一个 VMOption 对象。
      返回:
      给定名称的 VM 选项的 VMOption 对象。
      抛出:
      NullPointerException - 如果名称是 null
      IllegalArgumentException - 如果给定名称的 VM 选项不存在。
    • setVMOption

      void setVMOption(String  name, String  value)
      将给定名称的 VM 选项设置为指定值。新值将反映在 getVMOption(java.lang.String) 方法或 getDiagnosticOptions() 方法返回的新 VMOption 对象中。此方法不会更改此 VMOption 对象的值。
      参数:
      name - VM 选项的名称
      value - 要设置的 VM 选项的新值
      抛出:
      IllegalArgumentException - 如果给定名称的 VM 选项不存在。
      IllegalArgumentException - 如果新值无效。
      IllegalArgumentException - 如果 VM 选项不可写。
      NullPointerException - 如果名称或值为 null
      SecurityException - 如果存在安全管理器并且调用者没有 ManagementPermission("control")。
    • dumpThreads

      default void dumpThreads(String  outputFile, HotSpotDiagnosticMXBean.ThreadDumpFormat PREVIEW  format) throws IOException
      dumpThreads是Java平台的反射预览API。
      预览功能可能会在未来的版本中删除,或升级为 Java 平台的永久功能。
      以给定格式生成给定文件的线程转储。 outputFile 参数必须是不存在的文件的绝对路径。

      线程转储将包括所有平台线程的输出。它可能包括一些或所有虚拟线程的输出。

      API 注意:
      输出文件必须是绝对路径,因为可以从具有不同当前工作目录的工具或程序远程访问 MXBean。
      实现要求:
      默认实现抛出 UnsupportedOperationException
      参数:
      outputFile - 要创建的文件的路径
      format - 使用的格式
      抛出:
      IllegalArgumentException - 如果文件路径不是绝对路径
      IOException - 如果文件已经存在或写入文件时抛出 I/O 异常
      NullPointerException - 如果任一参数为 null
      SecurityException - 如果设置了安全管理器并且其 SecurityManager.checkWrite(java.lang.String) 方法拒绝对文件的写访问或 ManagementPermission("control") 被拒绝
      UnsupportedOperationException - 如果不支持此操作
      自从:
      19