Junior — Middle
Qual a quantidade de áreas alocadas para a distribuição dinâmica de memória durante a execução do programa?
sobes.tech IA
Resposta da IA
Durante a execução de um programa em C#, a memória dinâmica é alocada no monte gerenciado (managed heap). Este monte representa uma única área de memória onde os objetos criados com a instrução new são colocados.
Ou seja, uma única área é alocada para a distribuição dinâmica de memória: o monte gerenciado, que é gerido pelo ambiente de execução CLR (Common Language Runtime). O coletor de lixo libera automaticamente a memória não utilizada nesta área.
Exemplo de criação de um objeto no monte:
class Program
{
static void Main()
{
var obj = new MyClass(); // memória alocada no monte gerenciado
}
}
class MyClass
{
public int Value;
}