MENÚ

Obtener el uso de memoria de Java

Tabla de contenido

Java memoriaObtener uso Runtime.getRuntime().totalMemory, freeMemory

Java Devuelve información "Total", "Usada" y "Máxima utilizable" para la información de la memoria de la máquina virtual.
La explicación de cada elemento es la siguiente.

  • total...Tiempo de ejecución.getRuntime().totalMemory()Esta es la cantidad de memoria asignada a la máquina virtual Java.
  • cantidad a usar...Tiempo de ejecución.getRuntime().totalMemory()-Tiempo de ejecución.getRuntime().freeMemory()convertirse en,
    Uso de memoria de los objetos actualmente asignados en la memoria.
  • máximo utilizable...Tiempo de ejecución.getRuntime().maxMemory()es la cantidad máxima de memoria que la máquina virtual Java intentará utilizar.
    Si la cantidad utilizada se acerca al total y la memoria libre no se puede proteger ni siquiera con la recolección de basura, la máquina virtual Java se expandirá hasta la capacidad "máxima disponible".

programa de muestra

/** * Devuelve información sobre la memoria total de la máquina virtual Java, la cantidad utilizada y * la cantidad máxima de memoria que intenta utilizar. * @return Información de memoria de la máquina virtual Java */ public static String getMemoryInfo() { DecimalFormat f1 = new DecimalFormat("#,###KB"); DecimalFormat f2 = new DecimalFormat("##.#"); long free = Runtime.getRuntime ( ).freeMemory() / 1024; total largo = Runtime.getRuntime().totalMemory() / 1024; max largo = Runtime.getRuntime().maxMemory() / 1024; usado largo = total - gratis; relación doble = ( usado * 100 / (doble)total); String info = "Información de la memoria Java: Total = + f1.format(total) + ", " + "Usado = + f1.format(usado) + " (" + f2.format( ratio) + "%)," + "máximo disponible="+f1.format(max); información de devolución; }


Resultado de la ejecución 1

◆Ejemplo de ejecución

public static void main(String[] args) { System.out.println(getMemoryInfo()); }

◆Resultado de salida

Información de la memoria Java: total = 1984 KB, uso = 458 KB (23.1%), máximo utilizable = 65 088 KB

Resultado de la ejecución 2

◆Ejemplo de ejecución
Intente cambiar el tamaño del montón de Java y ejecútelo.
El valor del tamaño del montón de Java se puede especificar como una opción del comando Java.

java -Xms64m -Xmx512m Principal

-Tamaño del montón inicial de Xms
Especifica la asignación de memoria inicial a la máquina virtual Java. El valor predeterminado es 2 MB.
-Xmx tamaño máximo de montón
Especifica la asignación máxima de memoria para la máquina virtual Java. El valor predeterminado es 64 MB.

public static void main(String[] args) { System.out.println(getMemoryInfo()); }

◆Resultado de salida

Información de la memoria Java: total = 65.088 KB, uso = 524 KB (0,81 TP3T), máximo utilizable = 520.256 KB

"Total Runtime.getRuntime().totalMemory()" es-Xms, "Runtime.getRuntime().maxMemory()" máximo disponible es-XmxEstá vinculado a.

  • URLをコピーしました!
Tabla de contenido