COR_PRF_SUSPEND_REASON, énumération
Indique la raison pour laquelle le runtime est interrompu.
Syntaxe
typedef enum {
COR_PRF_SUSPEND_OTHER = 0x00,
COR_PRF_SUSPEND_FOR_GC = 0x01,
COR_PRF_SUSPEND_FOR_APPDOMAIN_SHUTDOWN = 0x02,
COR_PRF_SUSPEND_FOR_CODE_PITCHING = 0x03,
COR_PRF_SUSPEND_FOR_SHUTDOWN = 0x04,
COR_PRF_SUSPEND_FOR_INPROC_DEBUGGER = 0x06,
COR_PRF_SUSPEND_FOR_GC_PREP = 0x07, COR_PRF_SUSPEND_FOR_REJIT = 8
} COR_PRF_SUSPEND_REASON;
Membres
Membre | Description |
---|---|
COR_PRF_SUSPEND_OTHER |
Le runtime est interrompu pour une raison non spécifiée. |
COR_PRF_SUSPEND_FOR_GC |
Le runtime est interrompu pour traiter une requête de garbage collection. Les rappels liés au garbage collection se interviennent entre les rappels ICorProfilerCallback::RuntimeSuspendFinished et ICorProfilerCallback::RuntimeResumeStarted. |
COR_PRF_SUSPEND_FOR_APPDOMAIN_SHUTDOWN |
Le runtime est interrompu pour permettre l’arrêt d’un AppDomain .Lors de son interruption, le runtime détermine les threads du AppDomain en cours d’arrêt et définit leur abandon lorsqu’ils reprennent. Il n’existe pas de rappels AppDomain spécifiques lors de cette interruption. |
COR_PRF_SUSPEND_FOR_CODE_PITCHING |
Événements de compilation juste-à-temps (JIT) et de lancement du code. Le lancement du code intervient uniquement lorsque le compilateur juste-à-temps est actif et que ce lancement est activé. Les rappels de lancement du code se produisent entre les rappels ICorProfilerCallback::RuntimeSuspendFinished et ICorProfilerCallback::RuntimeResumeStarted . Remarque : Le JIT CLR ne lance pas les fonctions dans .NET Framework version 2.0 et cette valeur n’est donc pas utilisée dans la version 2.0. |
COR_PRF_SUSPEND_FOR_SHUTDOWN |
Le runtime est interrompu pour permettre son arrêt. Il doit interrompre tous les threads pour terminer l’opération. |
COR_PRF_SUSPEND_FOR_INPROC_DEBUGGER |
Le runtime est interrompu à des fins de débogage in-process. |
COR_PRF_SUSPEND_FOR_GC_PREP |
Le runtime est interrompu pour préparer une opération de garbage collection. |
COR_PRF_SUSPEND_FOR_REJIT |
Le runtime est interrompu à des fins de recompilation JIT. |
Notes
Tous les threads du runtime situés dans du code non managé sont autorisés à poursuivre leur exécution jusqu’à ce qu’ils tentent de réintégrer le runtime, auquel cas ils sont également interrompus jusqu’à la reprise du runtime. Cela s’applique également aux nouveaux threads qui entrent dans le runtime. Tous les threads du runtime sont immédiatement interrompus s’ils se trouvent dans du code interruptible ou invités à le faire s’ils atteignent du code interruptible.
Spécifications
Plateformes : Consultez Configuration requise.
En-tête : CorProf.idl, CorProf.h
Bibliothèque : CorGuids.lib
Versions de .NET Framework : Disponible à partir de la version 1.0