Sobes.tech
Middle+
57

Негізгі (SOH) қоспағанда, қандай қоқыстарды білесіз? Үлкен объекттік қоқыс және бекітілген объекттік қоқыс туралы айтыңыз.

Сұралған компаниялар
Core outstaff

AI-дан жауап

sobes.tech AI

.NET-те негізгі қоқыс жәшігіне (Small Object Heap, SOH) қоса, келесі бөлімдер бар:

  • Үлкен объектілер қоқыс жәшігі (LOH) — 85 000 байттан асатын объектілер үшін пайдаланылады. Мұндай объектілер бөлек бөлінеді, SOH-ның фрагментациясын болдырмау үшін. LOH әдепкі бойынша жинақталмайды, бұл жадының фрагментациясына әкелуі мүмкін.

  • Тіркелген объектілер қоқыс жәшігі (POH) — жаңа нұсқаларда .NET-те енгізілген, жиналған жад жинағышы қозғалыс жасай алмайтын объектілерді сақтау үшін (мысалы, қауіпсіз емес кодпен немесе интероппен жұмыс істегенде). POH фрагментацияны азайтуға және тіркелген объектілермен жұмыс істеу өнімділігін арттыруға көмектеседі.

Мысал:

byte[] largeArray = new byte[100_000]; // LOH-ға түседі
fixed (byte* p = largeArray) {
    // тіркелген көрсеткіш, объект POH-да тіркелген
}