Spec-Zone.ru › OpenJDK 21

Класс MemoryUsage

java.lang.Object
java.lang.management.MemoryUsage
public class MemoryUsage extends Object
Объект MemoryUsage представляет собой моментальный снимок использования памяти. Экземпляры класса MemoryUsage обычно создаются методами, которые используются для получения информации об использовании памяти отдельных пулов памяти виртуальной машины Java или кучи или некучной памяти виртуальной машины Java в целом.

Объект MemoryUsage содержит четыре значения:

Описание содержимого объекта MemoryUsage
Значение Описание
init представляет собой начальное количество памяти (в байтах), которое виртуальная машина Java запрашивает у операционной системы для управления памятью во время запуска. Виртуальная машина Java может запрашивать дополнительную память у операционной системы и может также освобождать память для системы со временем. Значение init может быть неопределенным.
used представляет собой количество памяти, используемой в данный момент (в байтах).
committed представляет собой количество памяти (в байтах), которое гарантированно доступно для использования виртуальной машиной Java. Количество зарезервированной памяти может изменяться со временем (увеличиваться или уменьшаться). Виртуальная машина Java может освобождать память для системы, и committed может быть меньше, чем init. committed всегда будет больше или равно used.
max представляет собой максимальное количество памяти (в байтах), которое может быть использовано для управления памятью. Его значение может быть неопределенным. Максимальное количество памяти может изменяться со временем, если оно определено. Количество используемой и зарезервированной памяти всегда будет меньше или равно max если max определено. Выделение памяти может завершиться ошибкой, если оно пытается увеличить используемую память так, что used > committed даже если used <= max по-прежнему будет истинным (например, когда в системе мало виртуальной памяти).
Below is a picture showing an example of a memory pool:
        +----------------------------------------------+
        +////////////////           |                  +
        +////////////////           |                  +
        +----------------------------------------------+

        |--------|
           init
        |---------------|
               used
        |---------------------------|
                  committed
        |----------------------------------------------|
                            max
 

Сопоставление MXBean

MemoryUsage сопоставлен с CompositeData с атрибутами, как указано в методе from.
Since:
1.5

Краткое описание конструкторов

Конструктор Описание
MemoryUsage(long init, long used, long committed, long max)
Создает объект MemoryUsage.

Краткое описание методов

Модификатор и тип Метод Описание
static MemoryUsage from(CompositeData cd)
Возвращает объект MemoryUsage, представленный заданным CompositeData.
long getCommitted()
Возвращает количество памяти в байтах, зарезервированной для использования виртуальной машиной Java.
long getInit()
Возвращает количество памяти в байтах, которое виртуальная машина Java изначально запрашивает у операционной системы для управления памятью.
long getMax()
Возвращает максимальное количество памяти в байтах, которое может быть использовано для управления памятью.
long getUsed()
Возвращает количество используемой памяти в байтах.
String toString()
Возвращает описательное представление этого использования памяти.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание конструкторов

MemoryUsage

public MemoryUsage(long init, long used, long committed, long max)
Создает объект MemoryUsage.
Параметры:
init - начальное количество памяти в байтах, которое виртуальная машина Java выделяет; или -1 если значение неопределено.
used - количество используемой памяти в байтах.
committed - количество зарезервированной памяти в байтах.
max - максимальное количество памяти в байтах, которое может быть использовано; или -1 если значение неопределено.
Используется:
IllegalArgumentException - если
  • значение init или max отрицательное, но не -1; или
  • значение used или committed отрицательное; или
  • used больше значения committed; или
  • committed больше значения max max если определено.

Подробное описание методов

getInit

public long getInit()
Возвращает количество памяти в байтах, которое виртуальная машина Java изначально запрашивает у операционной системы для управления памятью. Этот метод возвращает -1 если начальный размер памяти неопределён.
Возвращает:
начальный размер памяти в байтах; -1 если неопределён.

getUsed

public long getUsed()
Возвращает количество используемой памяти в байтах.
Возвращает:
количество используемой памяти в байтах.

getCommitted

public long getCommitted()
Возвращает количество памяти в байтах, зарезервированной для использования виртуальной машиной Java. Это количество памяти гарантировано для использования виртуальной машиной Java.
Возвращает:
количество зарезервированной памяти в байтах.

getMax

public long getMax()
Возвращает максимальное количество памяти в байтах, которое может быть использовано для управления памятью. Этот метод возвращает -1 если максимальный размер памяти неопределён.

Это количество памяти не гарантируется для использования в управлении памятью, если оно больше, чем количество зарезервированной памяти. Виртуальная машина Java может не выделить память, даже если количество используемой памяти не превышает этот максимальный размер.

Возвращает:
максимальное количество памяти в байтах; -1 если неопределён.

toString

public String toString()
Возвращает описательное представление этого использования памяти.
Переопределяет:
toString в классе Object
Возвращает:
строковое представление объекта.

from

public static MemoryUsage from(CompositeData cd)
Возвращает объект MemoryUsage, представленный заданным CompositeData. Заданный CompositeData должен содержать следующие атрибуты:
Атрибуты и типы, содержащиеся в заданном CompositeData
Имя атрибута Тип
init java.lang.Long
used java.lang.Long
committed java.lang.Long
max java.lang.Long
Параметры:
cd - CompositeData представляющий MemoryUsage
Возвращает:
объект MemoryUsage, представленный cd если cd не null; null в противном случае.
Используется:
IllegalArgumentException - если cd не представляет MemoryUsage с указанными выше атрибутами.

© 1993, 2023, 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/21/docs/api/java.management/java/lang/management/MemoryUsage.html

Spec-Zone.ru

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