Tartalomjegyzék:
- Meghatározás - Mit jelent az automatikus memóriakezelés (AMM)?
- A Techopedia elmagyarázza az automatikus memóriakezelést (AMM)
Meghatározás - Mit jelent az automatikus memóriakezelés (AMM)?
Az automatikus memóriakezelés (AMM) egy olyan technika, amelyben az operációs rendszer vagy alkalmazás automatikusan kezeli a memória kiosztását és elosztását. Ez azt jelenti, hogy a programozónak nem kell kódot írnia a memóriakezelési feladatok végrehajtásához az alkalmazás fejlesztésekor. Az automatikus memóriakezelés kiküszöböli az olyan általános problémákat, mint például az objektum számára elkülönített memória elfelejtése és a memóriaszivárgás okozása, vagy a már megszabadult objektumok memóriájának megkísérelése.
A hulladékgyűjtés az automatikus memóriakezelés egyik formája.
A Techopedia elmagyarázza az automatikus memóriakezelést (AMM)
Az Oracle szabadalmaztatott AMM paramétereivel rendelkezik, mint például a PGA_AGGREGATE_TARGET és az SGA_TARGET. Az Oracle két inicializálási paramétert használ az AMM konfigurálásához, az alábbiak szerint:
- MEMORY_TARGET: Alapértelmezés szerint nulla. Dinamikusan megkönnyíti az Oracle teljes memória-rendelkezésre állásának a MEMORY_MAX_TARGET korlátozásokig történő beállítását.
- MEMORY_MAX_TARGET: Meghatározza a MEMORY_TARGET maximális méretét, amelyet meg lehet növelni egy példány újraindítása nélkül.
A .NET közös nyelvű futási idejű szemétgyűjtő kezeli az alkalmazások számára a memória elosztását és felszabadítását. Az új .NET-keretrendszer-folyamat inicializálásakor a következők fordulnak elő:
- Az AMM fenntartja a címtér szomszédos területét futási időnként, amelyet kezelt halomnak hívnak.
- Ez a címtér rendelkezik egy mutatóval, amelyet a következő objektumok kiosztására használnak.
- A mutatót kezdetben úgy állítják be, hogy kezelje a halom alapcímét, ahol minden referenciatípus is kiosztásra kerül.
A kezelt halommemória-elosztás sokkal hatékonyabb, mint a nem kezelt memóriaallokáció.
