Problemas de Depuración – ContextSwitchDeadlock –

Mientras se depuraba una aplicación escrita en C#, se genera el siguiente error, de Contexto “ContextSwitchDeadlock”.

El proceso espera a la carga de un archivo en txt.

Se detectó ContextSwitchDeadlock

Message: El CLR no ha podido realizar la transición del contexto COM 0x39be68 al contexto COM 0x39bfd8 durante 60 segundos. Es probable que el subproceso que contiene el contexto o apartamento de destino esté en espera sin proporcionar mensajes o que procese una operación de ejecución muy larga que no proporcione mensajes Windows. Normalmente, esta situación tiene un impacto negativo en el rendimiento y puede hacer que la aplicación no responda o que acumule continuamente el uso de la memoria. Para evitar este problema, todos los subprocesos de apartamentos de un único subproceso (STA) deberían utilizar primitivos de espera que proporcionen mensajes (como CoWaitForMultipleHandles) y proporcionar mensajes regularmente durante operaciones de ejecución largas.

Para solucionarlo siga las opciones Debug -> Exceptions -> Managed Debug Assistants

ContextSwitchDeadlock

Publicado en C Sharp

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*