تقدم هذه المقالة طريقة (نوعان) من Eclipse لتعديل ضبط معلمة JVM ، ومشاركتها معك ، على النحو التالي:
بشكل عام ، عندما لا تقوم بتعيين الإعدادات ذات الصلة لـ Eclipse ، ستشعر دائمًا أن بدء التشغيل بطيء ومن الجيد استخدامه. في الواقع ، طالما قمت بتكوين المعلمات ذات الصلة من Eclipse ، سيتم تحسينها بشكل كبير.
هناك طريقتان:
1. افتح ملف تكوين Eclipse Eclipse.ini وتغيير -xmx (تمثل قيمته الحد الأقصى للذاكرة التي يمكن أن تستخدمها JVM)
2. عند تشغيل برنامج Java ، حدد تشغيل -> تشغيل التكوين -> ودخل -XMS100M -XMX800M ( -يمثل -xms حجم الذاكرة المخصص عند بدء تشغيل JVM ، ويمثل -xmx الحد الأقصى للكمية من الذاكرة التي يمكن تخصيصها).
اليوم ، عندما كنت أختبر المستند إلى صورة في Eclipse ، تم الإبلاغ عن الخطأ التالي:
java.lang.outofmemoryerror: مساحة كومة جافا
من معلومات الاستثناء أعلاه ، يمكننا أن نرى أن الذاكرة المطلوبة من قبل JVM قد تجاوزت الحد الأقصى للذاكرة التي خصصناها للجهاز الظاهري. وبالتالي فإن المشكلة تتحول إلى كيفية ضبط الحد الأقصى لذاكرة JVM في Eclipse.
1. حاول تعديل ملف Eclipse.ini (لا تعمل هذه الطريقة)
ابحث عن ملف Eclipse.ini في دليل Eclipse وقم بتعديل المحتوى التالي:
-XMS40M-XMX512M
بعد تعديله ، إعادة تشغيل Eclipse ، وجد أنه لم ينجح على الإطلاق. بعد التحقق من بعض المعلومات لاحقًا ، اتضح أن الحد الأدنى والحد الأقصى للذاكرة المحددة هنا كان للاستخدام من قبل JVM. تحتوي قيمة الذاكرة هذه على الذاكرة المستخدمة بواسطة Eclipse نفسها.
2. تعديل JDK لاستخدام الذاكرة (هذه الطريقة ممكنة)
ابحث عن Window-> التفضيلات-> Java-> مثبت JRE في Eclispe ، انقر فوق الزر "تحرير" على اليمين ، وقم بملء القيم التالية في خيار "وسيطات VM الافتراضية" في واجهة التحرير.
-xms64m -xmx128m
3. تعديل تكوينات التشغيل (هذه الطريقة ممكنة)
انقر بزر الماوس الأيمن على الرمز ، انقر فوق "تشغيل" -> "تشغيل التكوينات" بالترتيب ، وقم بملء القيم التالية في "وسيطات VM:" في معلمة الوسائط.
-xms64m -xmx128m
يتم تعيين ذاكرة الكومة بشكل أساسي من خلال معلمات JVM التالية:
| -xmx512m | الحد الأقصى لذاكرة الكومة الكلية ، بشكل عام ، تم تعيينه على 1/4 من الذاكرة الفعلية |
| -xms512m | عادةً ما يتم ضبط ذاكرة الكومة الكلية الأولية على حجم ذاكرة الكومة القصوى ، لذلك ليست هناك حاجة لضبط حجم الكومة وفقًا لاستخدام الكومة الحالي. |
| -xmn192m | يونغ مع ذاكرة كومة ، توصي صن رسميا 3/8 من الكومة بأكملها |
| تكوين ذاكرة الكومة | ذاكرة الكومة الكلية = صغار مع ذاكرة كومة + قديمة مع ذاكرة الكومة + ثابتة مع ذاكرة الكومة |
| شاب مع كومة من الذاكرة | تم وضع الكائن هنا عندما تم إنشاؤه |
| أقدم مع كومة من الذاكرة | سيتم وضع الكائن هنا قبل إعادة تدويره بالفعل |
| ثابت مع ذاكرة الكومة | يتم وضع ملفات الفصل والبيانات الوصفية وما إلى ذلك |
| -xx: permsize = 128m | الحجم الأولي لكومة الحزام المستمر |
| -xx: maxpermsize = 128m | الحد الأقصى لحجم كومة النطاق الثابت ، الكسوف الافتراضي هو 256 متر. إذا كنت ترغب في تجميع JDK ، فيجب عليك ضبط هذا ليكون كبيرًا جدًا لأن هناك العديد من الفصول الدراسية. |
4. الاستعلام عن رمز ذاكرة JVM الحالي
ما يلي هو الرمز للاستعلام عن حجم ذاكرة JVM الحالي. يمكنك اختبار ما إذا كانت ذاكرة JVM ستتغير بعد الإعدادات أعلاه. بعد زيادة عناصر التكوين لذاكرة JVM ، ليست هناك حاجة لإعادة تشغيل Eclipse. الرمز المحدد كما يلي:
الفئة العامة testmemory { / ** * param args * / public static void main (string [] args) {system. Out .println ("معلومات الذاكرة:" + tomemoryinfo ()) ؛ } / ** * احصل على معلومات الذاكرة الخاصة بـ JVM * * @RETURN * / السلسلة الثابتة العامة tomemoryinfo () {runtime currruntime = runtime.getRuntime () ؛ int nfreememory = (int) (curruntime.freememory () / 1024 /1024) ؛ int ntotalmemory = (int) (curruntime.totalmemory () / 1024 /1024) ؛ إرجاع nfreememory + "m/" + ntotalmemory + "m (free/total)" ؛ }}ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.