إذا كنت تكتب رمزًا أصليًا وتشعر بالقلق بشأن استخدام الذاكرة، من المفيد معرفة ملف الأداء الخاص بعمليات تخصيص الذاكرة الأصلية في تطبيقك لمعرفة ما إذا كانت هناك فرصة لتحسينها.
أسباب تحليل ذاكرة تطبيقك
يقدّم Android بيئة معالجة ذكية للذاكرة. عندما يتأكّد Android من أنّه لم يعُد تطبيقك يستخدم بعض العناصر، يُطلق أداة جمع المهملات الذاكرة غير المستخدَمة مرة أخرى إلى الحِزمة. يتم باستمرار تحسين الطريقة التي يتبعها Android للعثور على الذاكرة غير المستخدَمة، ولكن في مرحلة ما على جميع إصدارات Android، يجب أن يوقف النظام الرمز البرمجي مؤقتًا. في معظم الأحيان، لا يمكن ملاحظة الفواصل الزمنية. ومع ذلك، إذا كان تطبيقك يخصّص الذاكرة بشكل أسرع من قدرة النظام على جمعها، قد يتأخّر تطبيقك بينما يُفرِّغ المجمّع ذاكرة كافية لتلبية عمليات التخصيص. وقد يؤدي التأخير إلى تخطّي تطبيقك للّقطات وتسبب بطءً ملحوظًا.
للحصول على معلومات عن ممارسات البرمجة التي يمكن أن تقلِّل من استخدام ذاكرة تطبيقك، يمكنك الاطّلاع على مقالة إدارة ذاكرة تطبيقك.
نظرة عامة على عمليات تخصيص المساحات الإعلانية المدمجة مع المحتوى
عند تنفيذ مهمة تتبُّع استهلاك الذاكرة (عمليات تخصيص الذاكرة البرمجية الأصلية)، يتتبّع أداة تحليل الأداء في Android Studio عمليات تخصيص الذاكرة وعمليات إلغاء تخصيصها للكائنات في الرمز البرمجي الأصلي خلال الفترة الزمنية التي تحدّدها، كما تقدّم الجدول التالي المعلومات التالية:
- عمليات التوزيع: عدد العناصر التي تم توزيعها باستخدام
malloc()
أو عامل التشغيلnew
خلال الفترة الزمنية المحدّدة. - Deallocations: عدد العناصر التي تم إلغاء تخصيصها باستخدام
free()
أو عامل التشغيلdelete
خلال الفترة الزمنية المحدّدة. - حجم عمليات التوزيع: الحجم المجمّع بالكيلوبايت لجميع عمليات التوزيع خلال الفترة الزمنية المحدّدة
- حجم Deallocations: الحجم المجمّع بالبايت لجميع الذاكرة التي تمّت تحريرها خلال الفترة الزمنية المحدّدة
- إجمالي العدد: القيمة في عمود عمليات التوزيع مطروحًا منها القيمة في عمود عمليات تخصيص الصفقات.
- الحجم المتبقّي: القيمة في عمود حجم التخصيصات مطروحًا منها القيمة في عمود حجم عمليات التخصيص للصفقات.
تعرِض علامة التبويب العرض المرئي عرضًا مجمّعًا لجميع العناصر ذات الصلة بالرمز البرمجي الأصلي في تسلسل استدعاء الدوالّ خلال النطاق الزمني المحدّد. ويعرِض لك بشكل أساسي إجمالي مقدار الذاكرة التي يستهلكها تسلسل استدعاء الدوال البرمجية مع النُسخ المعروضة. يعرض الصف الأول اسم سلسلة المحادثات. يتمّ تجميع العناصر تلقائيًا من اليمين إلى اليسار استنادًا إلى حجم التخصيص، ويمكنك استخدام القائمة المنسدلة لتغيير الترتيب.
يستخدم أداة تحليل الأداء تلقائيًا حجم عيّنة يبلغ 2048 بايت: في كل مرة يتم فيها تخصيص 2048 بايت من الذاكرة، يتم أخذ لقطة ذاكرة. يؤدي استخدام عيّنة أصغر حجمًا إلى إنشاء لقطات أكثر تكرارًا، ما يؤدي إلى الحصول على بيانات أكثر دقة عن استخدام الذاكرة. يؤدي استخدام عيّنة أكبر إلى الحصول على بيانات أقل دقة، ولكنّها تستهلك موارد نظام أقل وتُحسِّن الأداء أثناء التسجيل. لتغيير حجم العيّنة، يُرجى الاطّلاع على تعديل إعدادات التسجيل.