Suprimir la recolección de basura C #
Mi aplicación asigna una gran cantidad de memoria (millones de objetos pequeños que suman varios gigabytes) y la retiene durante mucho tiempo.
Es .NET perder el tiempo revisando todos estos datos para hacer GC en él? ¿Con qué frecuencia ocurre el GC Gen 2 (el que verifica todos los objetos)? ¿Hay alguna forma de reducir su frecuencia o suprimirla temporalmente? Sé exactamente cuándo estoy listo para que se recopile una gran cantidad de memoria, ¿hay alguna forma de optimizarlo? Actualmente estoy llamando a GC.Collect (); GC.WaitForPendingFinalizers (); En ese tiempoUpdate: El contador de rendimiento "% de tiempo en GC" muestra un promedio de 10.6%.