2013-04-18 8 views
5

मैं कई लेखों में वर्णित मेमोरीवार्निंग सिस्टम बनाना चाहता हूं: उदा। जैसा कि http://www.javaspecialists.eu/archive/Issue092.html में है।टेनेटेड स्पेस की पहचान कैसे करें

private MemoryPoolMXBean findTenuredGenPool() { 
     for (MemoryPoolMXBean pool : ManagementFactory.getMemoryPoolMXBeans()) { 

       if(pool is tenured space) 
        return tenured 

     } 
    } 

मैं पर्याप्त अंतरिक्ष

  1. जांच करें कि पूल का नाम "पुनश्च ओल्ड जनरल" के बराबर होती है पहचान करने के लिए दो अलग अलग तरीकों को देखा है:

    इसलिए, मैं इस तरह पर्याप्त जगह की पहचान करना चाहते और/या "कार्यकाल जनरल"। कि क्या "pool.getType() == MemoryType.HEAP && pool.isUsageThresholdSupported()"

समस्या 1 साथ

  • की जांच: सीएमएस ओल्ड जनरल बारे में क्या? अन्य कार्यरत रिक्त स्थानों के बारे में क्या? क्या मुझे उन सभी को नियत नामों की सूची में जोड़ना चाहिए?

    के साथ समस्या: क्या यह कार्यरत स्थान को पुनर्प्राप्त करने का एक "सुरक्षित" तरीका है? क्या यह विश्वसनीय है?

    धन्यवाद!

  • उत्तर

    1

    वर्ष अंतरिक्ष

    • Tenured Gen
    • PS Old Gen
    • CMS Old Gen
    • G1 Old Gen

    के लिए हॉटस्पॉट JVM संभव स्मृति पूल नाम JRockit के लिए

    • Old Space
    संबंधित मुद्दे