الذاكرة المؤقتة وإبطالها
LayoutCache يقلل إعادة الحساب المتكرر.
ماذا يخزن؟
- المقاسات الجوهرية لكل كيان.
- العقد المتسخة.
- الكيانات المجمعة حسب العمق.
متى تصبح العقدة dirty؟
عند تغيّر واحد من:
UNodeULayoutUSelfChildrenIntrinsicSize
مع استثناء مهم:
- إذا كان التغيير الوحيد
IntrinsicSizeعلى عقدة لديها أبناء، يمكن تجاهله لتقليل الضوضاء.
دورة العمل
track_layout_changesيحدد العقد المتسخة.update_depth_cacheيعيد بناء خريطة العمق عند تغييرات هيكلية.upward_measure_pass_cachedيقرأ الذاكرة المؤقتة ويمسح أعلام الاتساخ في النهاية.
تشخيص الأداء
- راقب
dirty_count/dirty_ratio. - فعّل طبقة مراقبة الأداء عند الحاجة.