Referencias circulares Causa ¿Fuga de memoria?

Estoy tratando de ejecutar una pérdida de memoria en una aplicación de formularios de Windows. Estoy mirando ahora un formulario que contiene varios formularios incrustados. Lo que me preocupa es que los formularios secundarios, en su constructor, toman una referencia al formulario principal y lo mantienen en un campo de miembro privado. Entonces me parece que llega el momento de la recolección de basura:

El padre tiene una referencia al formulario hijo, a través de la colección de controles (el formulario hijo está incrustado allí). El formulario hijo no tiene GC.

El formulario secundario tiene una referencia al formulario principal, a través del campo de miembro privado. El formulario principal no es GC'd.

¿Es esta una comprensión precisa de cómo el recolector de basura evaluará la situación? ¿Alguna forma de 'probarlo' con fines de prueba?

Respuestas a la pregunta(6)

Su respuesta a la pregunta