public class MyClass
{
public int Age;
public int ID;
}
public void MyMethod()
{
MyClass m = new MyClass();
int newID;
}
A mi entender, lo siguiente es cierto:¿Cómo maneja la memoria gestionada .net los tipos de valores dentro de los objetos?
- La referencia m vive en la pila y se sale del ámbito cuando MiMetodo() salidas.
- El tipo de valor newID vive en la pila y se sale del ámbito cuando MiMetodo() salidas.
- El objeto creado por el nuevo operador vive en el montón y se vuelve recuperable por el GC cuando sale MyMethod(), suponiendo que no existe otra referencia al objeto.
Aquí es mi pregunta:
- tipos de valor hacer dentro de los objetos viven en la pila o el montón?
- son los tipos del boxeo/unboxing valor de un objeto es una preocupación?
- ¿Hay algún detalle, sin embargo, los recursos comprensibles sobre este tema?
Lógicamente, creo que los tipos de valor dentro de las clases estarían en el montón, pero no estoy seguro de si tienen que estar en la caja para llegar allí.
Editar:
Lecturas sugeridas para este tema: