C # Lista <double> tamaño vs doble [] tamaño

Así que solo estaba probando elPerfilador CLR de Microsoft, e hice un pequeño programa que creó una Lista con 1,000,000 de dobles en ella. Revisé el montón, y resultó que el tamaño de la Lista <> era de alrededor de 124 KB (no recuerdo exactamente, pero fue alrededor de eso). Esto realmente sacudió mi mundo, ¿cómo podría ser 124KB si tuviera 1 millón de dobles en él? De todos modos, después de eso decidí marcar un doble [1000000]. Y para mi sorpresa (bueno, no realmente, ya que esto es lo que esperaba con la Lista <> = P), el tamaño del arreglo es de 7.6MB. ¡¡Gran diferencia!!

¿Por qué son diferentes? ¿Cómo gestiona la Lista <> sus elementos para que sea tan (increíblemente) eficiente en memoria? Quiero decir, no es como los otros 7,5 mb estaban en otra parte, porque el tamaño de la aplicación era aproximadamente 3 o 4 KB más grande después de que creé el millón de dobles.

Respuestas a la pregunta(2)

Su respuesta a la pregunta