ICorProfilerCallback::Shutdown (Método)
Notifica al generador de perfiles que se está apagando la aplicación.
Sintaxis
HRESULT Shutdown();
Comentarios
El código del generador de perfiles no puede llamar de forma segura a métodos de la interfaz ICorProfilerInfo después de llamar al método Shutdown
. Las llamadas a métodos ICorProfilerInfo
dan como resultado un comportamiento indefinido después de que el método Shutdown
devuelva un valor. Algunos eventos inmutables pueden seguir apareciendo después del apagado; el generador de perfiles debe tener cuidado de devolver un valor inmediatamente cuando esto ocurra.
Solo se llamará al método Shutdown
si la aplicación administrada de la que se está generando el perfil se inicia como código administrado (es decir, se administra el marco inicial de la pila de procesos). Si la aplicación se inició como código no administrado pero más adelante se pasó al código administrado, lo que crea una instancia de Common Language Runtime (CLR), no se llamará a Shutdown
. En estos casos, el generador de perfiles debe incluir en su biblioteca una rutina DllMain
que use el valor DLL_PROCESS_DETACH para liberar los recursos y realizar el procesamiento de limpieza de sus datos, como el vaciado de seguimientos en el disco, etc.
En general, el generador de perfiles debe enfrentarse a apagados inesperados. Por ejemplo, el método TerminateProcess
de Win32 podría detener un proceso (declarado en Winbase.h). En otros casos, CLR detendrá determinados subprocesos administrados (subprocesos en segundo plano) sin entregar mensajes de destrucción ordenados para ellos.
Requisitos
Plataformas: Vea Requisitos de sistema.
Encabezado: CorProf.idl, CorProf.h
Biblioteca: CorGuids.lib
Versiones de .NET Framework: disponible a partir de la versión 2.0