DkmManagedHeapSampler Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
DkmManagedHeapSampler rappresenta un campionatore per gli oggetti nell'heap gestito.
Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).
public ref class DkmManagedHeapSampler : Microsoft::VisualStudio::Debugger::DkmDataContainer, IDisposable
[System.Runtime.InteropServices.Guid("14537042-a674-0f63-20ba-a9fab411d46a")]
public class DkmManagedHeapSampler : Microsoft.VisualStudio.Debugger.DkmDataContainer, IDisposable
[<System.Runtime.InteropServices.Guid("14537042-a674-0f63-20ba-a9fab411d46a")>]
type DkmManagedHeapSampler = class
inherit DkmDataContainer
interface IDisposable
Public Class DkmManagedHeapSampler
Inherits DkmDataContainer
Implements IDisposable
- Ereditarietà
- Ereditarietà
- Attributi
- Implementazioni
Proprietà
| IsUnloaded |
Restituisce true se per questo oggetto è stato generato un evento 'unloaded', ad esempio DkmThread::Unload, o se l'oggetto è stato chiuso. Si noti che è necessario prestare attenzione quando si controlla questo stato come, senza sincronizzazione, lo stato restituito potrebbe non essere più accurato dopo la lettura. (Ereditato da DkmDataContainer) |
| RuntimeInstance |
La classe DkmRuntimeInstance rappresenta un ambiente di esecuzione caricato in un DkmProcess e che contiene il codice da eseguire per il debug. Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
| UniqueId |
Guid che identifica in modo univoco questo DkmManagedHeapSampler. Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
| WorkerConnection |
[Facoltativo] Specifica una connessione a un processo di lavoro in cui verranno elaborate le operazioni di Heap Sampler. Questa API è stata introdotta in Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview). |
Metodi
| AnalyzeDuplicateStrings() |
Analizzare le stringhe duplicate trovate nell'heap, senza restituirle. Deve essere chiamato dopo la passeggiata degli oggetti e mai dopo la passeggiata delle radici come il processo può essere ripreso. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7). |
| AnalyzeEventHandlerLeaks(String[]) |
Analizzare le perdite del gestore eventi rilevate nell'heap, senza restituirle. Deve essere chiamato dopo la passeggiata degli oggetti e mai dopo la passeggiata delle radici come il processo può essere ripreso. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8). |
| AnalyzeSparseArrays() |
Analizzare le matrici sparse. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6). |
| Close() |
Chiude un'istanza dell'oggetto DkmManagedHeapSampler. Verrà rilasciata qualsiasi risorsa associata a questo oggetto in tutti i componenti. Sono incluse risorse tra i limiti di marshalling gestito o gestito/nativo. Gli oggetti DkmManagedHeapSampler vengono chiusi automaticamente quando l'oggetto DkmRuntimeInstance associato viene chiuso. Questo metodo può essere chiamato solo dal componente che ha creato l'oggetto. Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
| Create(DkmRuntimeInstance, DkmDataItem) |
Create una nuova istanza dell'oggetto DkmManagedHeapSampler. Il chiamante è responsabile della chiusura dell'oggetto creato al termine. Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
| Create(DkmRuntimeInstance, DkmWorkerProcessConnection, DkmDataItem) |
Create una nuova istanza dell'oggetto DkmManagedHeapSampler. Il chiamante è responsabile della chiusura dell'oggetto creato al termine. Questa API è stata introdotta in Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview). |
| DeferRootsAnalysis() |
Indicare all'heap sampler che l'analisi delle radici deve essere posticipata e che i risultati devono essere restituiti senza oggetti live identificati. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4). |
| GetAddressesForDuplicatedStringValue(String) |
Recuperare tutti gli indirizzi trovati per il valore di stringa duplicato specificato. Restituisce solo risultati validi per le stringhe ottenute tramite GetNextDuplicateStrings. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5). |
| GetDataItem<T>() |
Ottiene l'istanza di 'T' aggiunta a questa istanza del contenitore. Se questo contenitore non contiene un 'T', questa funzione restituirà Null. (Ereditato da DkmDataContainer) |
| GetNextDuplicateStrings(UInt32) |
Tenta di recuperare il valore della parte richiesta successiva delle stringhe duplicate dall'heap gestito. Non deve essere chiamato prima del completamento della passeggiata dell'heap. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5). |
| GetNextEventHandlerLeaks(UInt32) |
Tenta di recuperare il valore della parte richiesta successiva delle istanze del gestore eventi che perde dall'heap gestito. Non deve essere chiamato prima del completamento della passeggiata dell'heap. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8). |
| GetNextEventHandlerLeaksJMC(UInt32) |
Tenta di recuperare il valore della parte richiesta successiva delle istanze del gestore eventi che perde dall'heap gestito con tipi esclusi filtrati. Non deve essere chiamato prima del completamento della passeggiata dell'heap. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8). |
| GetNextSparseArrayDetails(DkmManagedTypeId, UInt32) |
Tenta di recuperare il valore della parte richiesta successiva degli oggetti dell'istanza di matrice sparse. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6). |
| GetNextSparseArraySummaries(UInt32) |
Tenta di recuperare il valore della parte richiesta successiva degli oggetti di riepilogo della matrice sparse. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6). |
| GetRoots() |
Restituisce le radici dall'heap campione. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
| GetSampledHeapData(UInt32) |
Restituisce la parte successiva richiesta di dati del grafico a oggetti serializzati. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
| GetSampledHeapDataWithoutRoots(UInt32) |
Restituisce la parte successiva richiesta di dati del grafico a oggetti serializzati, senza includere le informazioni radice. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4). |
| GetSampledHeapTypeStats() |
Restituisce le statistiche del tipo heap. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
| GetSampledHeapTypeStats176(Boolean) |
Restituisce le statistiche del tipo heap, facoltativamente inclusi gli oggetti morti nei conteggi. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6). |
| GetSegments() |
Ottiene l'elenco di segmenti nell'heap. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7). |
| GetTotalBytesWastedByEventHandlerLeaks() |
Restituisce la quantità totale di byte rilevati dai gestori eventi nell'heap gestito. Questo calcolo è separato dal valore ByteWasted di ogni struct delle informazioni di perdita. Ciò avviene perché gli alberi secondari delle perdite possono sovrapporsi, causando il doppio conteggio degli oggetti conservati. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8). |
| GetTotalBytesWastedByEventHandlerLeaksJMC() |
Restituisce la quantità totale di byte rilevati dai gestori eventi nell'heap gestito con tipi esclusi filtrati. Questo calcolo è separato dal valore ByteWasted di ogni struct delle informazioni di perdita. Ciò avviene perché gli alberi secondari delle perdite possono sovrapporsi, causando il doppio conteggio degli oggetti conservati. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8). |
| InitializeHeapObjectWalk(UInt32, Boolean) |
Inizializza l'heap sampler. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
| NextObjects(UInt32) |
Illustra il numero specificato di oggetti nell'heap. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
| NextReferences(UInt32) |
Illustra il numero specificato di riferimenti nell'heap. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
| NextRoots(UInt32) |
Cammina il numero specificato di radici GC sull'heap. Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000). Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
| RemoveDataItem<T>() |
Rimuovere l'istanza di 'T' da questo contenitore. In genere non è necessario chiamare questo metodo come contenitore di dati verrà svuotato automaticamente quando l'oggetto viene chiuso. (Ereditato da DkmDataContainer) |
| SetDataItem<T>(DkmDataCreationDisposition, T) |
Inserire un nuovo elemento nel contenitore di dati. (Ereditato da DkmDataContainer) |
Implementazioni dell'interfaccia esplicita
| IDisposable.Dispose() |
Da aggiungere. |