Solo se ha asignado el almacenamiento asignado en el montón .
Si una variable de tipo de valor es en el montón, o es parte de alguna otra clase, o un valor en caja, lo que es un objeto que solamente contiene el valor tipo de valor. El valor es parte de la memoria que se "libera" cuando el objeto que lo contiene es basura.
Si hay una variable de tipo de valor en la pila, la memoria que utiliza se "liberará" de manera efectiva cuando se devuelva el marco de pila mediante el método de retorno.
Tenga en cuenta que lo que termina en la pila y lo que termina en el montón es un implementation detail que se hace más complicado por variables capturadas, bloque iterador, métodos asíncronos, parámetros ref etc. Pero el principio general es que la memoria utilizada para los valores de tipo de valor siempre forman parte de "algo más", por lo que se recupera cuando se recupera la memoria para esa "otra cosa". (Esto no es una especie de paso separado: el valor reside en la memoria para ese "algo más" ya sea un objeto o un marco de pila).
posible duplicado de [¿Los tipos de valores obtienen Basura recolectada?] (Http : //stackoverflow.com/questions/2342772/do-value-types-get-garbage-collected) – nawfal