शुरू करेंमुफ़्त में शुरू करें

मेमोरी उपयोग ट्रैक करना

आप एक डेटा प्रोसेसिंग एप्लिकेशन पर काम कर रहे हैं जो ऑब्जेक्ट्स के बड़े कलेक्शन को मैनिपुलेट करता है. क्रिटिकल ऑपरेशंस के दौरान मेमोरी खपत ट्रैक करने के लिए एक मेमोरी मॉनिटरिंग यूटिलिटी इम्प्लीमेंट करें, ताकि OutOfMemoryError एक्सेप्शंस से बचा जा सके.

यह अभ्यास पाठ्यक्रम का हिस्सा है

Java में कोड ऑप्टिमाइज़ करना

पाठ्यक्रम देखें

अभ्यास निर्देश

  • मौजूदा JVM रनटाइम इंस्टेंस प्राप्त करें.
  • रनटाइम की total memory और free memory का उपयोग करके वर्तमान में उपयोग की गई मेमोरी की गणना करें.
  • मेगाबाइट्स में उपयोग की गई मेमोरी प्राप्त करने के लिए मेथड कॉल करें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

public class Main {
    public static double getUsedMemoryMB() {
        // Retrieve the JVM runtime instance
        Runtime runtime = ____.____()
        // Calculate the current used memory
        long usedMemoryBytes = runtime.____() - runtime.____();
        return usedMemoryBytes / (1024.0 * 1024.0);
    }
    
    public static void main(String[] args) {
        double memoryBefore = getUsedMemoryMB();
        System.out.println("Memory before array creation: " + memoryBefore + " MB");
        
        int size = 10_000_000;
        double[] largeArray = new double[size];
        for (int i = 0; i < size; i++) {
            largeArray[i] = Math.sqrt(i);
        }
        
        // Get the currently used memory in megabytes
        double memoryAfter = ____();
        System.out.println("Memory after array creation: " + memoryAfter + " MB");
        System.out.println("Memory used by array creation: " + (memoryAfter - memoryBefore) + " MB");
    }
}
कोड संपादित करें और चलाएँ