DkmManagedHeapSampler Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
DkmManagedHeapSampler představuje sampler pro objekty ve spravované haldě.
Toto rozhraní API bylo zavedeno v sadě 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
- Dědičnost
- Dědičnost
- Atributy
- Implementuje
Vlastnosti
IsUnloaded |
Vrátí hodnotu true, pokud byla pro tento objekt vyvolána událost unloaded (příklad: DkmThread::Unload je volána) nebo pokud byl objekt uzavřen. Mějte na paměti, že při kontrole tohoto stavu je potřeba střídmět, protože bez synchronizace nemusí být vrácený stav po přečtení přesný. (Zděděno od DkmDataContainer) |
RuntimeInstance |
DkmRuntimeInstance Třída představuje spouštěcí prostředí, které je načteno do DkmProcess a který obsahuje kód pro ladění. Toto rozhraní API bylo zavedeno v sadě Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
UniqueId |
Identifikátor GUID, který jednoznačně identifikuje tento DkmManagedHeapSampler. Toto rozhraní API bylo zavedeno v sadě Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
WorkerConnection |
[Volitelné] Určuje připojení k pracovnímu procesu, ve kterém se budou zpracovávat operace Vzorkovače haldy. Toto rozhraní API bylo představeno v sadě Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview). |
Metody
AnalyzeDuplicateStrings() |
Analyzujte duplicitní řetězce nalezené na haldě, aniž byste je vrátili. Měla by být volána po procházce objektů a nikdy po kořenech chůze, protože proces mohl pokračovat. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7). |
AnalyzeEventHandlerLeaks(String[]) |
Analyzujte úniky obslužné rutiny událostí zjištěné na haldě, aniž byste je vrátili. Měla by být volána po procházce objektů a nikdy po kořenech chůze, protože proces mohl pokračovat. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8). |
AnalyzeSparseArrays() |
Analyzujte zhuštěná pole. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6). |
Close() |
Zavře DkmManagedHeapSampler instance objektu. Tím se uvolní všechny prostředky přidružené k tomuto objektu napříč všemi komponentami. To zahrnuje prostředky napříč počítači nebo hranicemi spravovaného/nativního zařazování. DkmManagedHeapSampler objekty jsou automaticky zavřeny při jejich přidružené DkmRuntimeInstance objekt je uzavřen. Tuto metodu může volat pouze komponenta, která objekt vytvořila. Toto rozhraní API bylo zavedeno v sadě Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
Create(DkmRuntimeInstance, DkmDataItem) |
Create novou instanci objektu DkmManagedHeapSampler. Volající je zodpovědný za zavření vytvořeného objektu po dokončení. Toto rozhraní API bylo zavedeno v sadě Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
Create(DkmRuntimeInstance, DkmWorkerProcessConnection, DkmDataItem) |
Create novou instanci objektu DkmManagedHeapSampler. Volající je zodpovědný za zavření vytvořeného objektu po dokončení. Toto rozhraní API bylo představeno v sadě Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview). |
DeferRootsAnalysis() |
Označte vzorkovníku haldy, že analýza kořenů by měla být odložena a že výsledky by měly být vráceny bez identifikace živých objektů. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4). |
GetAddressesForDuplicatedStringValue(String) |
Načte všechny nalezené adresy pro danou duplicitní řetězcovou hodnotu. Vrátí platné výsledky pouze pro řetězce získané prostřednictvím GetNextDuplicateStrings. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5). |
GetDataItem<T>() |
Získá instanci T, která byla přidána do této instance kontejneru. Pokud tento kontejner neobsahuje "T", vrátí tato funkce hodnotu null. (Zděděno od DkmDataContainer) |
GetNextDuplicateStrings(UInt32) |
Pokusí se načíst hodnotu další požadované části duplicitních řetězců ze spravované haldy. Neměl by být volána před dokončením procházky haldy. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5). |
GetNextEventHandlerLeaks(UInt32) |
Pokusí se načíst hodnotu další požadované části instancí obslužné rutiny událostí úniku ze spravované haldy. Neměl by být volána před dokončením procházky haldy. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8). |
GetNextEventHandlerLeaksJMC(UInt32) |
Pokusí se načíst hodnotu další požadované části instancí obslužné rutiny událostí, která nevrací ze spravované haldy s vyfiltrovanými vyloučenými typy. Neměl by být volána před dokončením procházky haldy. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8). |
GetNextSparseArrayDetails(DkmManagedTypeId, UInt32) |
Pokusí se načíst hodnotu další požadované části objektů instance zhuštěného pole. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6). |
GetNextSparseArraySummaries(UInt32) |
Pokusí se načíst hodnotu další požadované části souhrnných objektů zhuštěného pole. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6). |
GetRoots() |
Vrátí kořeny ze vzorkované haldy. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo zavedeno v sadě Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
GetSampledHeapData(UInt32) |
Vrátí další požadovanou část dat grafu serializovaného objektu. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo zavedeno v sadě Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
GetSampledHeapDataWithoutRoots(UInt32) |
Vrátí další požadovanou část dat grafu serializovaného objektu bez zahrnutí kořenových informací. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4). |
GetSampledHeapTypeStats() |
Vrátí statistiky typu haldy. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo zavedeno v sadě Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
GetSampledHeapTypeStats176(Boolean) |
Vrátí statistiky typu haldy, volitelně včetně mrtvých objektů v počtech. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6). |
GetSegments() |
Získá seznam segmentů v haldě. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7). |
GetTotalBytesWastedByEventHandlerLeaks() |
Vrátí celkové množství bajtů uniklých obslužnými rutinami událostí ve spravované haldě. Tento výpočet je oddělený od hodnoty BytesWasted každé struktury informací o úniku. Je to proto, že dílčí stromy úniků se mohou překrývat, což vede k dvojímu počítání zachovaných objektů. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8). |
GetTotalBytesWastedByEventHandlerLeaksJMC() |
Vrátí celkové množství bajtů uniklých obslužnými rutinami událostí ve spravované haldě s vyfiltrovanými vyloučenými typy. Tento výpočet je oddělený od hodnoty BytesWasted každé struktury informací o úniku. Je to proto, že dílčí stromy úniků se mohou překrývat, což vede k dvojímu počítání zachovaných objektů. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo představeno v sadě Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8). |
InitializeHeapObjectWalk(UInt32, Boolean) |
Inicializuje vzorkovník haldy. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo zavedeno v sadě Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
NextObjects(UInt32) |
Projde daný počet objektů na haldě. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo zavedeno v sadě Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
NextReferences(UInt32) |
Provede zadaný počet odkazů na haldě. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo zavedeno v sadě Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
NextRoots(UInt32) |
Projde daný počet kořenů uvolňování paměti na haldě. Omezení umístění: Rozhraní API se musí volat z komponenty IDE (úroveň > komponenty 100 000). Toto rozhraní API bylo zavedeno v sadě Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
RemoveDataItem<T>() |
Odeberte z tohoto kontejneru instanci T. Obvykle není nutné volat tuto metodu, protože kontejner dat se automaticky vyprázdní při zavření objektu. (Zděděno od DkmDataContainer) |
SetDataItem<T>(DkmDataCreationDisposition, T) |
Do kontejneru dat umístěte novou položku. (Zděděno od DkmDataContainer) |
Explicitní implementace rozhraní
IDisposable.Dispose() |
Chcete-li přidat. |