La aplicación WPF se cuelga cuando se usan fuentes de más de 100 ptos de tamaño

Este artículo le ayuda a resolver el problema en el que la aplicación deja de responder y se cuelga indefinidamente.

Se aplica a:   .NET Framework 3.5 Service Pack 1
Número KB original:   2712383

Síntoma

Tiene una aplicación De Microsoft .NET 3.5 Window Presentation Framework (WPF), que usa caracteres grandes o fuentes. La aplicación deja de responder y se cuelga indefinidamente.

Causa

El Windows interfaz de usuario de Presentation Framework ha entrado en una sección crítica denominada bloqueo de composición. Mientras el subproceso de interfaz de usuario mantiene este bloqueo, debe sincronizar la comunicación con el subproceso de representación Windows Presentation Framework. El subproceso de representación procesa un carácter grande cuando necesita entrar en el bloqueo de composición. Dado que el subproceso de interfaz de usuario tiene el bloqueo de composición, el subproceso de representación lo espera y los subprocesos se bloquean.

Hemos confirmado que se trata de un error en Microsoft .NET 3.5 Framework.

Solución

Este error se ha corregido en Microsoft .NET 4.0 Framework. Para evitar este error, evite usar caracteres grandes o fuentes, o actualice la aplicación para que se dedíquite a Microsoft .NET 4.0 Framework.

Más información

En el síntoma anterior, definimos grande para significar un carácter con un tamaño efectivo de 100 pt o superior, siendo 100 pt el umbral de error. Efectivo se refiere a multiplicar el tamaño de fuente por cualquier transformación. El umbral tiene en cuenta las transformaciones que podrían estar en vigor y el efecto de la configuración de PPP del equipo. Por ejemplo, si usa una fuente Arial de 60 puntos dentro del ámbito de un RenderTransform que escala hacia arriba por un factor de 2, el tamaño efectivo es de 120 pt, que supera el límite de umbral de 100 pt.