البحث الرئيسي في هذه المقالة هو المحتوى ذي الصلة للشرح التفصيلي لإعدادات العلم في JVM ، والذي يتم تقديمه على النحو التالي.
-xmx3550m: اضبط الحد الأقصى للذاكرة المتاحة لـ JVM إلى 3550 متر.
-XMS3550M: اضبط الذاكرة الأولية المتاحة لـ JVM إلى 3550 متر.
-xmn2g: اضبط حجم الجيل الشاب إلى 2G.
-XSS128K: اضبط حجم المكدس لكل مؤشر ترابط إلى 128K
-xx: Newsize = 4: اضبط حجم الجيل الشاب إلى 4
-xx: newratio = 4: اضبط نسبة الجيل الشاب (بما في ذلك عدن واثنين من المناطق الناجية) إلى الجيل القديم (باستثناء الجيل المستمر) إلى 4 ، ثم نسبة الجيل الشاب إلى الجيل القديم هي 1: 4 ، وحسابات الجيل الشاب لمدة 1/5 من المكدس بأكمله
-xx: Survivorratio = 4: يحدد نسبة الحجم بين منطقة عدن ومنطقة الناجين في الجيل الشاب. تم تعيين النسبة بين منطقتي الناجين ومنطقة عدن واحدة 2: 4 ، وتسمة منطقة الناجين 1/6 من الجيل الشاب بأكمله.
-xx: maxpermsize = 16m: اضبط حجم الجيل الثابت على 16 مترًا.
-xx: intenuresizeThreshold = n ، يتم وضع كائنات أكبر من N مباشرة في الشيخوخة
-xx: maxtenureingthreshold = 0: اضبط الحد الأقصى لسن القمامة. إذا تم ضبطها على 0 ، فلن يمر كائن الجيل الشاب عبر منطقة الناجين ويدخل الجيل القديم مباشرة.
-xx:+uperparalleloldgc: تكوين طريقة جمع القمامة القديم إلى مجموعة موازية.
حجم الكومة الكامل = حجم الجيل الشاب + حجم الجيل القديم + حجم الجيل المستمر.
-xx:+useerialgc: اضبط جامع التسلسل
-xx:+usterparallegc: اضبط جامع متوازي
-xx:+usparalledloldgc: قم بإعداد جامع الجيل القديم الموازي
-xx:+useconcmarksweepgc: قم بإعداد جامع متزامن
-xx:+printgc
-xx:+printgcdetails
-xx:+printgctimestamps
-xloggc: اسم الملف
-xx: ParallelgCthReads = N: اضبط عدد وحدات المعالجة المركزية المستخدمة عند جمع المجمع المتوازي. عدد المواضيع التي تم جمعها بالتوازي.
-xx: maxgcpausemillis = n: اضبط الحد الأقصى لوقت الإيقاف المؤقت للجمع المتوازي
-xx: gctimeratio = n: اضبط النسبة المئوية لوقت جمع القمامة لوقت تشغيل البرنامج. الصيغة 1/(1+ن)
-xx:+cmsincrementalmode: ضبط على الوضع الإضافي. إنه مناسب لحالات وحدة المعالجة المركزية الواحدة.
-xx: ParallelGcThreads = n: اضبط عدد وحدات المعالجة المركزية المستخدمة عندما يكون الجيل الشاب من المجمع المتزامن هو مجموعة موازية. عدد المواضيع المستخدمة في مجموعة متوازية.
افترض أن هناك ملفًا مسماً testmem.java
javac testmem.java java -verbose: gc -xms20m -xmx20m -xmn10m -xx:+printgcdetails -xx: survivorratio = 8 testmem
-xms20m: الحجم الأولي لكومة Java في JVM هو 20 متر. (بما في ذلك الجيل الجديد وكبار السن)
-xmx20m: الحد الأقصى لحجم كومة Java في JVM هو 20 مترًا ، مما يعني أنه غير قابل للتطوير. (بما في ذلك الجيل الجديد وكبار السن)
-xmn10m: حجم الجيل الجديد هو 10 أمتار
-xx:+printgcdetails: طباعة معلومات GC مفصلة
-xx: Survivorratio = 8: النسبة المكانية لواحد من منطقة الناجين في الجيل الجديد هي 8: 1 ، ثم نسبة منطقتين على قيد الحياة إلى منطقة عدن واحدة هي 2: 8 ، وتسمة منطقة الناجين واحدة من 1/10 من الجيل الشاب بأكمله
بعد معرفة معلومات العلم أعلاه ، يمكننا الحصول على المعلومات التالية:
الحجم الإجمالي لكومة Java هو 20 م = 20 * 1024k = 20480k
حجم الجيل المعلم: 10 م = 10 * 1024k = 10240k
مساحة Eden: 10240K * 8/10 = 8192K
من الفضاء: 10240k * 1/10 = 1024k
إلى الفضاء: 10240k * 1/10 = 1024k
حجم الشيخوخة: 20 م - 10 م = 10 م = 10240 كيلو
ما سبق هو كل التفسير التفصيلي لإعدادات العلم في JVM في هذه المقالة ، وآمل أن يكون مفيدًا للجميع. يمكن للأصدقاء المهتمين الاستمرار في الرجوع إلى الموضوعات الأخرى ذات الصلة على هذا الموقع. إذا كانت هناك أي أوجه قصور ، فيرجى ترك رسالة لإشارةها. شكرا لك يا أصدقائك لدعمكم لهذا الموقع!