none
.Net ou pas RRS feed

  • Question

  • Bonjour,

    je réalise une application .Net qui me renvoie un message d'erreur surprenant :

     

    Code Snippet

    L'Assistant Débogage managé 'ContextSwitchDeadlock' a détecté un problème dans 'd:\RapidService_VSNET\Debug\ASGenerator.exe'.
    Informations supplémentaires : Le CLR n'a pas pu effectuer de transition du contexte COM 0x2d0b70 au contexte COM 0x2d0a00 pendant 60 secondes.
    Le thread qui possède le contexte/cloisonnement de destination est probablement en train d'attendre ou de traiter une opération très longue sans pompage des messages Windows.
    Cette situation a généralement des effets négatifs sur les performances et peut parfois entraîner le blocage de l'application ou une utilisation ininterrompue de la mémoire.
    Pour éviter ce problème, tous les threads STA (Single Threaded Apartment) doivent utiliser des primitives d'attente de pompage (par exemple CoWaitForMultipleHandles) et pomper
     de manière régulière les messages lors des opérations qui sont longues à s'exécuter.

     

    Ce qui est surprenant est que cet application est 100% .Net et ne contient pas de code COM.

    • Donc pourquoi ce problème ?
    • Y aurait il du COM dans .Net ?

     Je ne cherche pas une solution, j'en ai déjà une. Mais je cherche à partager un reflexion.

     

    Cordialement

    Michel4CE

     

     

     

    mercredi 26 mars 2008 21:00

Réponses

Toutes les réponses