سؤال

لدي برنامج يتطلب بشكل أساسي الكثير من الذاكرة. ومع ذلك ، لسبب ما تعطيني Java خطأ عندما أحاول تعيين مساحة Max Home أعلى من 1.5 جيجابايت. هذا هو الجري

java -Xmx1582m [my program]

على ما يرام ، لكن

java -Xmx1583m [my program]

يعطي الخطأ

Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.

حصلت على نفس الخطأ في كل من سطر أوامر Windows و Eclipse.

فيما يلي تكوينات النظام الخاصة بي:

Windows 7 (64 بت)

Intel Core 2 Quad CPU

ذاكرة الوصول العشوائي المثبت: 8.00 جيجابايت

جافا الإصدار 1.6.0

من الغريب أنه لا يمكنني فقط تعيين ذاكرة 1.5 جيجابايت على الرغم من أنني أقوم بتشغيل نظام التشغيل 64 بت مع ذاكرة وصول عشوائي 8 جيجابايت. هل هناك طريقة للتغلب على ذلك؟

هل كانت مفيدة؟

المحلول

الحالة المحتملة هي أنه في حين نظام التشغيل هو 64 بت ، JVM الخاص بك ليس كذلك. فتح سطر الأوامر والكتابة java -version سيعطيك معلومات الإصدار المطول ، والتي يجب أن تشير إلى ما إذا كان JVM المثبت هو بناء 32 أو 64 بت.

يجب ألا يواجه JVM 64 بت مشكلة في حدود الذاكرة الأعلى.

نصائح أخرى

يتم استخدام مساحة الكومة

-XX:MaxPermSize=64m
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top