Interfaccia ICorProfilerCallback
Fornisce i metodi utilizzati da Common Language Runtime per notificare a Code Profiler quando si verificano gli eventi per i quali ha effettuato la sottoscrizione.
Metodi
Metodo |
Descrizione |
---|---|
Notifica al profiler che è stato creato un dominio applicazione. |
|
Notifica al profiler che è in corso la creazione di un dominio applicazione. |
|
Notifica al profiler che è stato scaricato un dominio applicazione da un processo. |
|
Notifica al profiler che è in corso lo scaricamento di un dominio applicazione da un processo. |
|
Notifica al profiler che è terminato il caricamento di un assembly. |
|
Notifica al profiler che è in corso il caricamento di un assembly. |
|
Notifica al profiler che è stato scaricato un assembly. |
|
Notifica al profiler che è in corso lo scaricamento di un assembly. |
|
Notifica al profiler che è terminato il caricamento di una classe. |
|
Notifica al profiler che è in corso il caricamento di una classe. |
|
Notifica al profiler che è terminato lo scaricamento di una classe. |
|
Notifica al profiler che è in corso lo scaricamento di una classe. |
|
Notifica al profiler che è stato creato un RCW (Runtime Callable Wrapper) per l'IID e la classe specificati. |
|
Notifica al profiler che è in corso l'eliminazione di un RCW. |
|
Notifica al profiler che il controllo viene passato al blocco catch appropriato. |
|
Notifica al profiler che il controllo viene passato fuori dal blocco catch appropriato. |
|
Obsoleto in .NET Framework versione 2.0. |
|
Obsoleto in .NET Framework 2.0. |
|
Non implementato. Un profiler che necessiti di informazioni sulle eccezioni non gestite deve ottenere tali informazioni in altri modi. |
|
Non implementato. Un profiler che necessiti di informazioni sulle eccezioni non gestite deve ottenere tali informazioni in altri modi. |
|
Notifica al profiler che la fase di ricerca della gestione delle eccezioni ha individuato un gestore per l'eccezione generata. |
|
Notifica al profiler che è in corso l'esecuzione di un filtro utente. |
|
Notifica al profiler che è appena terminata l'esecuzione di un filtro utente. |
|
Notifica al profiler del codice che la fase di ricerca della gestione delle eccezioni è entrata in una funzione. |
|
Notifica al profiler che la fase di ricerca della gestione delle eccezioni ha finito di effettuare la ricerca in una funzione. |
|
Notifica al profiler che è stata generata un'eccezione. |
|
Notifica al profiler che la fase di rimozione della gestione delle eccezioni sta entrando in una clausola finally contenuta nella funzione specificata. |
|
Notifica al profiler che la fase di rimozione della gestione delle eccezioni è uscita da una clausola finally. |
|
Notifica al profiler del codice che la fase di rimozione della gestione delle eccezioni è entrata in una funzione. |
|
Notifica al profiler che la fase di rimozione della gestione delle eccezioni ha finito di rimuovere una funzione. |
|
Notifica al profiler che il runtime ha iniziato a scaricare una funzione. |
|
Chiamato per inizializzare il profiler ogni volta che viene avviata una nuova applicazione di Common Language Runtime. |
|
Metodo ICorProfilerCallback::JITCachedFunctionSearchFinished |
Notifica al profiler che è terminata una ricerca per una funzione compilata precedentemente utilizzando NGen.exe. |
Notifica al profiler che è iniziata una ricerca per una funzione compilata precedentemente utilizzando NGen.exe. |
|
Notifica al profiler che il compilatore JIT ha finito di compilare una funzione. |
|
Notifica al profiler che il compilatore JIT (Just-In-Time) ha iniziato a compilare una funzione. |
|
Notifica al profiler che una funzione compilata tramite JIT è stata rimossa dalla memoria. |
|
Notifica al profiler che il compilatore JIT sta per inserire una funzione in linea con un'altra funzione. |
|
Notifica al profiler che si è verificata una transizione da codice gestito a codice non gestito. |
|
Notifica al profiler che è in corso la connessione di un modulo al relativo assembly padre. |
|
Notifica al profiler che è terminato il caricamento di un modulo. |
|
Notifica al profiler che è in corso il caricamento di un modulo. |
|
Notifica al profiler che è terminato lo scaricamento di un modulo. |
|
Notifica al profiler che è in corso lo scaricamento di un modulo. |
|
Notifica al profiler i riferimenti agli oggetti spostati durante la Garbage Collection. |
|
Notifica al profiler che la memoria all'interno dell'heap è stata allocata per un oggetto. |
|
Notifica al profiler gli oggetti in memoria a cui fa riferimento l'oggetto specificato. |
|
Notifica al profiler il numero di istanze di ogni classe specificata che sono state create dopo la precedente Garbage Collection. |
|
Metodo ICorProfilerCallback::RemotingClientInvocationFinished |
Notifica al profiler che una chiamata remota è stata completata sul client. |
Metodo ICorProfilerCallback::RemotingClientInvocationStarted |
Notifica al profiler che è stata avviata una chiamata remota. |
Notifica al profiler del codice che la parte sul lato server di una chiamata remota è stata completata e che il client è ora in modalità di ricezione e sta per elaborare la risposta. |
|
Notifica al profiler che il client sta inviando una richiesta al server. |
|
Metodo ICorProfilerCallback::RemotingServerInvocationReturned |
Notifica al profiler che il processo ha finito di chiamare un metodo in risposta a una richiesta di chiamata di un metodo remota. |
Metodo ICorProfilerCallback::RemotingServerInvocationStarted |
Notifica al profiler che il processo sta chiamando un metodo in risposta a una richiesta di chiamata di un metodo remota. |
Notifica al profiler che il processo sta ricevendo una chiamata del metodo o una richiesta di attivazione remota. |
|
Notifica al profiler che il processo ha finito di elaborare una richiesta di chiamata di un metodo remota e sta per trasmettere la risposta attraverso un canale. |
|
Fornisce al profiler informazioni sui riferimenti radice dopo la Garbage Collection. |
|
Notifica al profiler che il runtime ha fatto riprendere tutti i thread in fase di esecuzione e che è tornato al normale funzionamento. |
|
Notifica al profiler che il runtime sta facendo riprendere tutti i thread in fase di esecuzione. |
|
Notifica al profiler che il runtime ha interrotto la relativa sospensione in corso. |
|
Notifica al profiler che il runtime ha finito di sospendere tutti i thread in fase di esecuzione. |
|
Notifica al profiler che il runtime sta per sospendere tutti i thread in fase di esecuzione. |
|
Notifica al profiler che l'esecuzione del thread specificato è ripresa dopo la sospensione. |
|
Notifica al profiler che il thread specificato è stato o sta per essere sospeso. |
|
Notifica al profiler che l'applicazione si sta chiudendo. |
|
Notifica al profiler che un thread gestito viene implementato utilizzando un determinato thread del sistema operativo. |
|
Notifica al profiler che è stato creato un thread. |
|
Notifica al profiler che è stato eliminato un thread. |
|
Notifica al profiler che si è verificata una transizione da codice non gestito a codice gestito. |
Note
Common Language Runtime richiama un metodo nell'interfaccia ICorProfilerCallback (oppure ICorProfilerCallback2) per notificare al profiler il momento in cui si verifica un evento al quale è stata effettuata la sottoscrizione. Si tratta dell'interfaccia di callback principale utilizzata da CLR per comunicare con il Code Profiler.
Un Code Profiler deve implementare i metodi dell'interfaccia ICorProfilerCallback. Per .NET Framework versione 2.0 o successiva, il profiler deve implementare anche i metodi ICorProfilerCallback2. L'implementazione di ciascun metodo deve restituire un HRESULT con valore S_OK in caso di corretta esecuzione oppure E_FAIL in caso di errore. Attualmente, Common Language Runtime ignora il valore di HRESULT restituito da ciascun callback, a eccezione di ICorProfilerCallback::ObjectReferences.
Nel Registro di sistema di Microsoft Windows, Code Profiler deve registrare il proprio oggetto COM (Component Object Model) che implementa le interfacce ICorProfilerCallback e ICorProfilerCallback2. Code profiler effettua la sottoscrizione agli eventi per i quali desidera ricevere notifica chiamando il metodoICorProfilerInfo::SetEventMask. Tale operazione in genere viene eseguita nell'implementazione del metodo ICorProfilerCallback::Initialize del profiler. Quest'ultimo è quindi in grado di ricevere notifica dal runtime quando un evento sta per verificarsi o si è appena verificato in un processo di runtime in esecuzione.
Nota |
---|
Il profiler registra un solo oggetto COM.Se la destinazione del profiler è .NET Framework versione 1.0 o 1.1, tale oggetto COM deve implementare soltanto i metodi di ICorProfilerCallback.Se, invece, la destinazione è .NET Framework versione 2.0 o successiva, l'oggetto COM deve implementare anche i metodi di ICorProfilerCallback2. |
Requisiti
Piattaforme: vedere Requisiti di sistema di .NET Framework.
Intestazione: CorProf.idl, CorProf.h
Libreria: CorGuids.lib
Versioni di .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0
Vedere anche
Riferimenti
Interfaccia ICorProfilerCallback2