DkmManagedHeapSampler Klasa

Definicja

DkmManagedHeapSampler reprezentuje próbkator obiektów w zarządzanym stercie.

Ten interfejs API został wprowadzony w programie 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
Dziedziczenie
DkmManagedHeapSampler
Dziedziczenie
DkmManagedHeapSampler
Atrybuty
Implementuje

Właściwości

IsUnloaded

Zwraca wartość true, jeśli dla tego obiektu zostało zgłoszone zdarzenie "zwolniony" (na przykład: DkmThread::Unload jest wywoływane) lub jeśli obiekt został zamknięty. Należy pamiętać, że podczas sprawdzania tego stanu należy zachować ostrożność, ponieważ bez synchronizacji zwrócony stan może nie być już dokładny po odczytaniu instrukcji.

(Odziedziczone po DkmDataContainer)
RuntimeInstance

Klasa DkmRuntimeInstance reprezentuje środowisko wykonywania, które jest ładowane do obiektu DkmProcess i które zawiera kod do debugowania.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

UniqueId

Identyfikator GUID, który jednoznacznie identyfikuje ten DkmManagedHeapSampler.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

WorkerConnection

[Opcjonalnie] Określa połączenie z procesem roboczym, w którym zostaną przetworzone operacje narzędzia Heap Sampler.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview).

Metody

AnalyzeDuplicateStrings()

Przeanalizuj zduplikowane ciągi znalezione na stercie bez ich zwracania. Należy wywołać po przejściu obiektów i nigdy po przejściu do korzeni, ponieważ proces mógł zostać wznowiony.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7).

AnalyzeEventHandlerLeaks(String[])

Przeanalizuj wycieki procedury obsługi zdarzeń znalezione na stercie bez ich zwracania. Należy wywołać po przejściu obiektów i nigdy po przejściu do korzeni, ponieważ proces mógł zostać wznowiony.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8).

AnalyzeSparseArrays()

Przeanalizuj rozrzedne tablice.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6).

Close()

Zamyka wystąpienie obiektu DkmManagedHeapSampler. Spowoduje to zwolnienie wszystkich zasobów skojarzonych z tym obiektem we wszystkich składnikach. Obejmuje to zasoby między granicami zarządzania komputerami lub zarządzanymi/natywnymi marshallingami.

Obiekty DkmManagedHeapSampler są automatycznie zamykane po zamknięciu skojarzonego obiektu DkmRuntimeInstance.

Ta metoda może być wywoływana tylko przez składnik, który utworzył obiekt.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

Create(DkmRuntimeInstance, DkmDataItem)

Twórca nowe wystąpienie obiektu DkmManagedHeapSampler. Obiekt wywołujący jest odpowiedzialny za zamknięcie utworzonego obiektu po zakończeniu.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

Create(DkmRuntimeInstance, DkmWorkerProcessConnection, DkmDataItem)

Twórca nowe wystąpienie obiektu DkmManagedHeapSampler. Obiekt wywołujący jest odpowiedzialny za zamknięcie utworzonego obiektu po zakończeniu.

Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview).

DeferRootsAnalysis()

Wskaż próbkator stert, że analiza korzeni powinna zostać odroczona i że wyniki powinny być zwracane bez zidentyfikowanych obiektów na żywo.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4).

GetAddressesForDuplicatedStringValue(String)

Pobierz wszystkie adresy znalezione dla danej zduplikowanej wartości ciągu. Zwraca tylko prawidłowe wyniki dla ciągów uzyskanych za pośrednictwem polecenia GetNextDuplicateStrings.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5).

GetDataItem<T>()

Pobiera wystąpienie elementu "T", które zostało dodane do tego wystąpienia kontenera. Jeśli ten kontener nie zawiera ciągu "T", ta funkcja zwróci wartość null.

(Odziedziczone po DkmDataContainer)
GetNextDuplicateStrings(UInt32)

Próbuje pobrać wartość następnej żądanej części zduplikowanych ciągów z zarządzanej sterty. Nie należy nazywać się przed ukończeniem spaceru stertą.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5).

GetNextEventHandlerLeaks(UInt32)

Próbuje pobrać wartość następnej żądanej części wystąpień programu obsługi zdarzeń wycieków z zarządzanej sterty. Nie należy nazywać się przed ukończeniem spaceru stertą.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8).

GetNextEventHandlerLeaksJMC(UInt32)

Próbuje pobrać wartość następnej żądanej części wystąpień przecieków programu obsługi zdarzeń z zarządzanej sterty z wykluczonymi typami. Nie należy nazywać się przed ukończeniem spaceru stertą.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8).

GetNextSparseArrayDetails(DkmManagedTypeId, UInt32)

Próbuje pobrać wartość następnego żądanego fragmentu obiektów wystąpienia tablicy rozrzedzonej.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6).

GetNextSparseArraySummaries(UInt32)

Próbuje pobrać wartość następnej żądanej części obiektów podsumowania tablicy rozrzedzonej.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6).

GetRoots()

Zwraca korzenie z próbkowanego stertowania.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

GetSampledHeapData(UInt32)

Zwraca następną żądaną część danych grafu obiektu serializowanego.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

GetSampledHeapDataWithoutRoots(UInt32)

Zwraca następną żądaną część danych grafu obiektu serializowanego bez uwzględniania informacji głównych.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4).

GetSampledHeapTypeStats()

Zwraca statystyki typu sterty.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

GetSampledHeapTypeStats176(Boolean)

Zwraca statystyki typu sterty, opcjonalnie w tym martwe obiekty w liczbach.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6).

GetSegments()

Pobiera listę segmentów w stercie.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 7 (DkmApiVersion.VS17Update7).

GetTotalBytesWastedByEventHandlerLeaks()

Zwraca łączną ilość bajtów wyciekanych przez programy obsługi zdarzeń na zarządzanym stercie. To obliczenie jest oddzielone od wartości BytesWasted każdej struktury informacji o wycieku. Wynika to z faktu, że pod drzewa wycieków mogą się nakładać, co prowadzi do podwójnego zliczania zachowanych obiektów.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8).

GetTotalBytesWastedByEventHandlerLeaksJMC()

Zwraca łączną ilość bajtów wyciekanych przez programy obsługi zdarzeń na zarządzanym stercie z wykluczonymi typami. To obliczenie jest oddzielone od wartości BytesWasted każdej struktury informacji o wycieku. Wynika to z faktu, że pod drzewa wycieków mogą się nakładać, co prowadzi do podwójnego zliczania zachowanych obiektów.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8).

InitializeHeapObjectWalk(UInt32, Boolean)

Inicjuje próbkator stert.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

NextObjects(UInt32)

Przedstawia daną liczbę obiektów na stercie.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

NextReferences(UInt32)

Przechodzi przez daną liczbę odwołań na stercie.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

NextRoots(UInt32)

Chodzi o daną liczbę korzeni GC na stercie.

Ograniczenie lokalizacji: interfejs API musi być wywoływany ze składnika IDE (poziom > składnika 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

RemoveDataItem<T>()

Usuń wystąpienie "T" z tego kontenera. Zwykle nie trzeba wywoływać tej metody, ponieważ kontener danych zostanie automatycznie opróżniony po zamknięciu obiektu.

(Odziedziczone po DkmDataContainer)
SetDataItem<T>(DkmDataCreationDisposition, T)

Umieść nowy element w kontenerze danych.

(Odziedziczone po DkmDataContainer)

Jawne implementacje interfejsu

IDisposable.Dispose()

Do dodania.

Dotyczy