Cuando analizamos las pilas de memoria, después de 4 tipos de GC se encarga de que por lo general viene a través de:¿Cuál es la idea detrás de 'mango GC Fijado'?
Débil: - Un mango GC débil no impedirá la instancia que corresponde al de ser recogido de basura.
Example, used by the System.WeakReference class instances
.normal: - Un mango GC normal, impide la instancia correspondiente de ser recogido de basura.
Example, used by the instances of strong references
.RefCounted: - Un mango de referencia contado GC es usado internamente por el tiempo de ejecución,
example, when dealing with COM interfaces.
clavado: - ¿Por qué necesitamos este tipo de GC manejar? ¿Es sólo para evitar el movimiento de esa instancia en la memoria o
is there any other notion behind this? I want to know the notion behind Pinned GC handle(with an example).
Editado por la respuesta de Itay: - Tengo un no vacío Expandido DiffCell [] [] las que se une a una cuadrícula de datos en WPF. Al cerrar la ventana en la que está presente esta cuadrícula de datos, en el montón veo Pinned GC manejar apuntando a este vacío DiffCell array a través de objeto [] (ver instantánea). I am not using any unsafe code. I am just setting ItemsSource of data grid to null before closing that window. So my question is who does pin this array on heap and why?
Gracias Itay! Por favor, consulta la pregunta editada y cuéntame tus comentarios al respecto. –
Realmente no sabemos cómo WPF y el trabajo de unión, así que temo que no puedo ayudar aquí. –