2010-02-19 20 views
57

HI, मुझे पता है कि मैं अपने आवेदन के आधार पर जेवीएम की याददाश्त बढ़ा सकता हूं। अगर हाँ मैं जेवीएम मेमोरी कैसे बढ़ा सकता हूं? और मैं JVM के आकार को कैसे जान सकता हूं?मैं जेवीएम मेमोरी कैसे बढ़ा सकता हूं?

+0

के साथ खेलना आसान है जावा 8 में आपको यह करने की ज़रूरत नहीं है, यह आपकी मुख्य स्मृति पर निर्भर है। –

उत्तर

7

जावा को कॉल करते समय -एक्सएमएक्स ध्वज उदाहरण के लिए- एक्सएमएक्स 512 मीटर ढेर आकार के लिए 512 मेग्स के लिए। यदि आप शुरुआत से ही बढ़ने जा रहे हैं तो आप बड़े पैमाने पर ढेर शुरू करने के लिए -xms ध्वज पर भी विचार करना चाहेंगे। डिफ़ॉल्ट आकार 128megs है।

84

जब JVM शुरू, दो पैरामीटर अपनी स्मृति सूट करने के लिए समायोजित किया जा सकता की जरूरत है:

-Xms<size> 

प्रारंभिक जावा ढेर आकार और

-Xmx<size> 

अधिकतम जावा ढेर आकार निर्दिष्ट करता है।

http://www.rgagnon.com/javadetails/java-0131.html

+22

अपने आकार की इकाई निर्दिष्ट करने के लिए मत भूलना: 2048 मीटर, अन्यथा जेवीएम आपको बाइट्स का मतलब मानता है ... – bknopper

14

आप ग्रहण का उपयोग कर रहे हैं तो आप पूर्व के रूप में अपनी भागो विन्यास के वीएम तर्क में विशेष आवेदन के लिए आवश्यक आकार को निर्दिष्ट करके ऐसा कर सकते हैं: -Xms128m -Xmx512m

या आप चाहते हैं से चल सभी आवेदनों आपके ग्रहण में एक ही निर्दिष्ट आकार होना है, तो आप इसे eclipse.ini फ़ाइल में निर्दिष्ट कर सकते हैं जो आपके ग्रहण गृह निर्देशिका में मौजूद है।

रनटाइम के दौरान JVM का आकार प्राप्त करने के लिए आप Runtime.totalMemory() का उपयोग कर सकते हैं जो बाइट्स में मापा गया जावा वर्चुअल मशीन में स्मृति की कुल मात्रा देता है।

2

प्रोजेक्ट पर राइट क्लिक करें -> चलाएं -> रन कॉन्फ़िगरेशन ..-> तर्क टैब का चयन करें -> वीएम तर्कों में आप अपना जेवीएम मेमोरी आवंटन बढ़ा सकते हैं। जावा हॉटस्पॉट दस्तावेज़ आपको अपना वीएम तर्क HERE

मैं eclipse.ini में कोई भी बदलाव नहीं करना चाहूंगा क्योंकि मामूली गलती के कारण बहुत सारे मुद्दे हैं। वीएम Args

संबंधित मुद्दे