سؤال

إذا أتحول على توليد معلومات التصحيح مع Javac ثم ملفات فئة أكبر 20-25٪. لديه هذا أي آثار الأداء على تشغيل برنامج جافا؟ إذا كانت الإجابة بنعم على أي ظروف وكم. وأتوقع له تأثير يذكر على تحميل الطبقات لأن الملفات هي أكبر ولكن هذا يجب أن يكون الحد الأدنى.

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

المحلول

في أي لغة، معلومات التصحيح هو المعلومات الوصفية. أنه بطبيعته يزيد من حجم الملفات الكائن، وبالتالي زيادة وقت التحميل. أثناء التنفيذ خارج المصحح، هو في الواقع تجاهل هذه المعلومات تماما. كما هو مبين (وإن لم يكن بشكل واضح) في المواصفات JVM يتم تخزين معلومات التصحيح خارج تيار بايت كود. وهذا يعني أنه في وقت التنفيذ ليس هناك فرق في ملف فئة. إذا كنت تريد أن تتأكد من ذلك، تحاول بها: -)

وفرع فلسطين. في كثير من الأحيان لتصحيح الأخطاء هناك قيمة في إيقاف الأمثل. أن <م> لا أن يكون لها تأثير الأداء.

نصائح أخرى

وإيقاف التصحيح وحدها لا ينبغي أن تحدث فرقا على الإطلاق. ولكن بمجرد إيقاف التصحيح وتشغيل الأمثل، يجب أن تشاهد الفرق، وهذا ما يجعل بعض التحسينات ثابتة في وقت الترجمة. بهذه الطريقة حتى الخاص الساخنة الأمثل كود يحصل أسرع في وقت التشغيل.

ولكن حتى الآن، والمفاضلة بين الحصول على معنى كاملة كومة آثار أو وجود بعض أكثر سهولة الأداء، وأنا دائما صوتوا لصالح كومة آثار. بعد كل شيء، المستخدمين على استعداد لانفاق 1000 $ سنويا للحصول على جهاز أسرع، ولكن ليسوا على استعداد لقضاء 15 دقيقة لتعطيك رسائل الخطأ ذات معنى للكم على حل مشاكلهم.

وبعد سنوات، وأنا أكثر استعدادا لقيمة بلدي 15 دقيقة أعلى من 1000 $ للمستخدم. :)

يرجى أن يكون على علم أنه منذ JDK1.3 javac يتجاهل أي أعلام الأمثل، "تجميع الوقت الأمثل هو غير ضروري"

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