Stavo leggendo questo articolo su MSDN. Nel primo paragrafo sotto il sottotitolo "Generazioni e prestazioni" è scritto:
First, it is faster to compact the memory for a portion of the managed heap than for the entire managed heap.
Ma perché ?
Stavo leggendo questo articolo su MSDN. Nel primo paragrafo sotto il sottotitolo "Generazioni e prestazioni" è scritto:
First, it is faster to compact the memory for a portion of the managed heap than for the entire managed heap.
Ma perché ?
L'articolo non entra nei dettagli per eseguire il backup di tale affermazione, tuttavia, vi è una semplice spiegazione.
Se A è una porzione dell'heap e B è l'intero heap, allora la compattazione chiara di A è meno lavoro della compattazione B perché è più piccola. Ci sono meno blocchi di memoria da tracciare, meno copie di memoria vengono eseguite e meno puntatori da aggiornare (la descrizione semplificata dei riferimenti nei linguaggi gestiti dalla memoria sono in realtà doppi puntatori e devono essere aggiornati durante la compattazione del cestino).
Leggi altre domande sui tag c# garbage-collection