Junior — Middle
Kako se upravlja i strukturiše memorija u C# okruženju?
sobes.tech АИ
Одговор од АИ
U C# upravljanje memorijom se obavlja automatski pomoću sakupljača smeća (Garbage Collector, GC). Memorija je podeljena na dve glavne oblasti:
- Stek (Stack) — čuva lokalne promenljive i parametre metoda. Memorija se dodeljuje i oslobađa vrlo brzo prema principu LIFO.
- Heap (Heap) — čuva objekte i podatke koji traju duže od vremena izvršavanja metode. Memorija na heap-u se upravlja od strane sakupljača smeća.
Sakupljač smeća periodično oslobađa memoriju zauzetu od strane objekata na koje više nema referenci. Ovo olakšava programeru ručno upravljanje memorijom i smanjuje rizik od curenja memorije.
Primer kreiranja objekta na heap-u:
class Program
{
static void Main()
{
Person p = new Person(); // objekat se kreira na heap-u
}
}
class Person
{
public string Name { get; set; }
}