martes, 29 de octubre de 2013

ContextSwitchDeadlock was detected

Me podrían ayudar a saber el origen de este error y como puedo solucionarlo?


ContextSwitchDeadlock was detected
Message: El CLR no ha podido realizar la transición del contexto COM 0x4008ba0 al contexto COM 0x4008df0 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.
[08:27:27 a.m.] Daniel Francisco Martinez Flores: -----
[08:27:28 a.m.] Daniel Francisco Martinez Flores: El CLR no ha podido realizar la transición del contexto COM 0x3ed8f20 al contexto COM 0x3ed9170 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.

6 comentarios:

  1. Hola, es visual studio 2010? creo eso puede suceder porque estas realizando un proceso que lleva mucho tiempo.

    ResponderBorrar
  2. pero puedes quitar ese mensaje:
    - Menu
    - Debug
    - Exceptions
    - Managed Debugging Assistants
    y ahi quitas el check de la casilla de "ContextSwitchDeadlock"

    Intenta.

    ResponderBorrar
  3. Si eso no te funciona intenta crear todo eso que haces que el proceso sea largo dentro de un procedimiento.

    ResponderBorrar
  4. olapp erick es en visual studio 2008 probe con la primer opción q me dijistes pero aun nada me convierte mas archivos pero siempre me muestra ese error

    ResponderBorrar
  5. miraa cuando de asi el common lenguaje run time exceptions checkeado solo en thrown me hace mas el procedimiento es en el único q me avanza mas

    ResponderBorrar