Comment obtenir la mémoire utilisée par le programme Java ?Le pourcentage du tas utilisé ?

Pour obtenir la mémoire utilisée par le programme Java et le pourcentage du tas utilisé, nous pouvons l'implémenter via les classes ManagementFactory et MemoryMXBean de Java. Voici quelques étapes détaillées :

1. Importez les classes nécessaires :

Dans le code Java, vous devez d'abord importer certaines classes nécessaires pour pouvoir accéder aux fonctions liées à la gestion et à la surveillance de la mémoire.

import java.lang.management.ManagementFactory;
import java.lang.management.MemoryMXBean;
import java.lang.management.MemoryUsage;

2. Obtenez l'instance MemoryMXBean :

MemoryMXBean fournit des méthodes et des informations pour surveiller l'utilisation de la mémoire. Une instance de MemoryMXBean peut être obtenue par le code suivant :

MemoryMXBean memoryMXBean = ManagementFactory.getMemoryMXBean();

3. Obtenez l'utilisation de la mémoire tas :

Utilisez MemoryMXBean pour utiliser la mémoire tas. La mémoire tas est divisée en deux parties « HeapMemoryUsage » et « NonHeapMemoryUsage ». Ici, nous nous concentrons sur "HeapMemoryUsage", qui contient l'utilisation du tas.

MemoryUsage heapMemoryUsage = memoryMXBean.getHeapMemoryUsage();
long usedHeapMemory = heapMemoryUsage.getUsed();
long maxHeapMemory = heapMemoryUsage.getMax();
double heapMemoryUsagePercentage = ((double) usedHeapMemory / maxHeapMemory) * 100.0;

Dans le code ci-dessus, usedHeapMemory indique la quantité de mémoire du tas utilisée, maxHeapMemory indique la capacité maximale du tas et heapMemoryUsagePercentage calcule le pourcentage d'utilisation de la mémoire du tas.

4. Imprimez le résultat :

Vous pouvez imprimer les informations obtenues pour afficher l'utilisation de la mémoire et le pourcentage d'utilisation du tas du programme Java.

System.out.println("Used Heap Memory: " + usedHeapMemory + " bytes");
System.out.println("Max Heap Memory: " + maxHeapMemory + " bytes");
System.out.println("Heap Memory Usage Percentage: " + heapMemoryUsagePercentage + "%");

Un exemple de code complet est le suivant :

import java.lang.management.ManagementFactory;
import java.lang.management.MemoryMXBean;
import java.lang.management.MemoryUsage;

public class MemoryUsageExample {
    
    
    public static void main(String[] args) {
    
    
        MemoryMXBean memoryMXBean = ManagementFactory.getMemoryMXBean();
        MemoryUsage heapMemoryUsage = memoryMXBean.getHeapMemoryUsage();

        long usedHeapMemory = heapMemoryUsage.getUsed();
        long maxHeapMemory = heapMemoryUsage.getMax();
        double heapMemoryUsagePercentage = ((double) usedHeapMemory / maxHeapMemory) * 100.0;

        System.out.println("Used Heap Memory: " + usedHeapMemory + " bytes");
        System.out.println("Max Heap Memory: " + maxHeapMemory + " bytes");
        System.out.println("Heap Memory Usage Percentage: " + heapMemoryUsagePercentage + "%");
    }
}

En exécutant le code ci-dessus, nous obtiendrons la quantité de mémoire du tas utilisée par le programme Java, la capacité maximale du tas et le pourcentage d'utilisation de la mémoire du tas. Veuillez noter que seule la mémoire tas est surveillée ici, et que d'autres types de mémoire (comme la mémoire non tas) peuvent également être surveillés de la même manière.

Je suppose que tu aimes

Origine blog.csdn.net/cz_00001/article/details/132432188
conseillé
Classement