मेरे पास एक कक्षा है जो infinit चलाती है (कुछ भी नहीं, बस लूप और नींद), जिसे NeverReturn कहा जाता है। मैं Windows XP 32 बिट में निम्न आदेश का उपयोग कर इसे चलाने के लिए प्रयास करें:एक मशीन में हमारे पास कितने JVM हो सकते हैं?
जावा -Xms1200M NeverReturn
मैं कमांड के साथ लगता है मैं एक ही समय में केवल 4 जावा उदाहरण बना सकते हैं। 5 वें और अगले जावा कमांड जेवीएम बनाने में असफल रहेगा।
यदि मैं आदेश को -Xms600M में बदलता हूं, तो मैं 8 जावा उदाहरण बना सकता हूं। 9वीं असफल हो जाएगी।
क्या कोई इसे समझा सकता है? मैं सूरज jdk1.6 अद्यतन 23 और jdk1.5 अद्यतन 22 का उपयोग कर रहा हूं।
'एस' इन-एक्सएमएस में कम से कम ** आवंटित करने के लिए JVM को कम से कम ** आवंटित करने के लिए मजबूर करता है। हो सकता है कि आप 'एक्स' के साथ 'एक्सएक्सएक्स' के बारे में सोच रहे हों, जो ** ** अधिकतर मेमोरी ** को आवंटित करेगा। यदि आपकी मशीन में 6 जीबी है, तो आप जो देख रहे हैं वह पूरी तरह सामान्य है कि आपने '-Xms' का उपयोग किया था। – Gugussee
32 बिट एक्सपी संस्करण केवल 4 जीबी संभाल सकता है - और इस मामले में केवल 3 जीबी उपलब्ध है। – tigger
मैं -Xms और -Xmx के बीच अंतर को समझता हूं। मेरा सवाल है कि ओएस में 32 बिट विंडोज सिस्टम पर 2 जीबी मेमोरी के बारे में हर प्रक्रिया देने की क्षमता है। लेकिन अभी भी कुछ जेवीएम प्रक्रिया को पार करने के लिए कुछ सीमाएं क्यों हैं। – xeranic