J'ai joué avec GC.GetTotalMemory(). Lorsque je crée une variable locale de type Titres dans l'exemple ci-dessous, la quantité de mémoire consommée augmente de 6276 octets. Que se passe t-il ici?Pourquoi GC.GetTotalMemory() rapporte-t-il d'énormes allocations de mémoire?
class Program
{
enum Titles { Mr, Ms, Mrs, Dr };
static void Main(string[] args)
{
GetTotalMemory();
Titles t = Titles.Dr;
GetTotalMemory();
}
static void GetTotalMemory()
{
long bytes = GC.GetTotalMemory(true);
Console.WriteLine("{0}", bytes);
}
}
6KB semble une étrange définition de « énorme » – jalf
Il ne me surprendrait pas si 'Console.WriteLine (...)' alloue de la mémoire . – bendin
6KB est "énorme" car on s'attend à une augmentation de 0 octet exactement. –