接口 OperatingSystemMXBean

所有父级接口:
OperatingSystemMXBean , PlatformManagedObject
所有已知的子接口:
UnixOperatingSystemMXBean

public interface OperatingSystemMXBean extends OperatingSystemMXBean
运行 Java 虚拟机的操作系统的特定于平台的管理接口。

该接口提供有关运行 Java 虚拟机的操作环境的信息。这可能是本机操作系统、虚拟化操作系统环境或容器管理的环境。

ManagementFactory.getOperatingSystemMXBean() 返回的OperatingSystemMXBean 对象是此接口或UnixOperatingSystemMXBean 接口的实现类的实例,具体取决于其底层操作系统。

自从:
1.5
  • 方法详情

    • getCommittedVirtualMemorySize

      long getCommittedVirtualMemorySize()
      返回保证对正在运行的进程可用的虚拟内存量(以字节为单位),如果不支持此操作,则返回 -1
      返回:
      保证可用于正在运行的进程的虚拟内存量(以字节为单位),如果不支持此操作,则为 -1
    • getTotalSwapSpaceSize

      long getTotalSwapSpaceSize()
      返回以字节为单位的交换空间总量。
      返回:
      以字节为单位的交换空间总量。
    • getFreeSwapSpaceSize

      long getFreeSwapSpaceSize()
      返回以字节为单位的可用交换空间量。
      返回:
      以字节为单位的可用交换空间量。
    • getProcessCpuTime

      long getProcessCpuTime()
      返回运行 Java 虚拟机的进程使用的 CPU 时间(以纳秒为单位)。返回值具有纳秒精度,但不一定是纳秒精度。如果平台不支持此操作,此方法返回 -1
      返回:
      进程使用的 CPU 时间(以纳秒为单位),如果不支持此操作,则为 -1
    • getFreePhysicalMemorySize

      @Deprecated (since ="14") default long getFreePhysicalMemorySize()
      已弃用。
      使用 getFreeMemorySize() 而不是这个历史上命名的方法。
      返回以字节为单位的可用物理内存量。
      实现要求:
      此实现必须返回与 getFreeMemorySize() 相同的值。
      返回:
      以字节为单位的可用物理内存量。
    • getFreeMemorySize

      long getFreeMemorySize()
      返回以字节为单位的可用内存量。
      返回:
      以字节为单位的可用内存量。
      自从:
      14
    • getTotalPhysicalMemorySize

      @Deprecated (since ="14") default long getTotalPhysicalMemorySize()
      已弃用。
      使用 getTotalMemorySize() 而不是这个历史上命名的方法。
      返回以字节为单位的物理内存总量。
      实现要求:
      此实现必须返回与 getTotalMemorySize() 相同的值。
      返回:
      以字节为单位的物理内存总量。
    • getTotalMemorySize

      long getTotalMemorySize()
      返回以字节为单位的内存总量。
      返回:
      以字节为单位的内存总量。
      自从:
      14
    • getSystemCpuLoad

      @Deprecated (since ="14") default double getSystemCpuLoad()
      已弃用。
      使用 getCpuLoad() 而不是这个历史上命名的方法。
      返回整个系统的“最近的 CPU 使用率”。该值是 [0.0,1.0] 区间内的双精度值。值 0.0 表示在最近一段时间内所有 CPU 都处于空闲状态,而值 1.0 表示在最近一段时间内所有 CPU 都在 100% 的时间内处于活动状态。根据系统中正在进行的活动, 0.0 和 1.0 之间的所有值都是可能的。如果系统最近的 cpu 使用率不可用,则该方法返回负值。
      实现要求:
      此实现必须返回与 getCpuLoad() 相同的值。
      返回:
      整个系统的“最近的 CPU 使用率”;如果不可用,则为负值。
      自从:
      1.7
    • getCpuLoad

      double getCpuLoad()
      返回操作环境的“最近的 CPU 使用率”。该值是 [0.0,1.0] 区间内的双精度值。值 0.0 表示在最近一段时间内所有 CPU 都处于空闲状态,而值 1.0 表示在最近一段时间内所有 CPU 都在 100% 的时间内处于活动状态。根据正在进行的活动,0.0 和 1.0 之间的所有值都是可能的。如果最近的 cpu 使用率不可用,则该方法返回一个负值。
      返回:
      整个操作环境的“最近的 CPU 使用率”;如果不可用,则为负值。
      自从:
      14
    • getProcessCpuLoad

      double getProcessCpuLoad()
      返回 Java 虚拟机进程的“最近的 CPU 使用率”。该值是 [0.0,1.0] 区间内的双精度值。值 0.0 表示在观察到的最近一段时间内没有任何 CPU 运行来自 JVM 进程的线程,而值 1.0 表示所有 CPU 在最近一段时间内 100% 的时间都在运行来自 JVM 的线程被观察。来自 JVM 的线程包括应用程序线程和 JVM 内部线程。根据 JVM 进程和整个系统中正在进行的活动,0.0 和 1.0 之间的所有值都是可能的。如果 Java 虚拟机最近的 CPU 使用率不可用,则该方法返回一个负值。
      返回:
      Java 虚拟机进程的“最近的 CPU 使用率”;如果不可用,则为负值。
      自从:
      1.7