Sdílet prostřednictvím


SDK Vizualizéru souběžnosti

Zdrojový kód lze instrumentovat použitím sady SDK Vizualizátoru souběžnosti pro zobrazení dodatečných informací ve vizualizátoru.Dodatečná data lze přiřadit k fázím a událostem v kódu.Tyto dodatečné vizualizace jsou známy jako značky. Úvodní návod, viz Představení SDK Visualizer souběžnosti.

Vlastnosti

Příznaky, rozsahy a zprávy mají dvě vlastnosti: kategorii a důležitost.V dialogovém okně Upřesnit nastavení lze použít vlastnosti k filtrování sady zobrazených značek.Tyto vlastnosti navíc ovlivňují vizuální reprezentaci značek.Například velikost příznaků slouží k reprezentaci důležitosti.K označení kategorie se používá barva.

Základní použití

Vizualizátor souběžnosti zpřístupňuje výchozího poskytovatele, který lze použít ke generování značek.Poskytovatel je již zaregistrován spolu s Vizualizátorem souběžnosti a pro zobrazení značek v uživatelském rozhraní není zapotřebí provádět žádnou další akci.

Jazyky C# a Visual Basic

V jazyce C#, Visual Basic a jiném spravovaném kódu použijte výchozího poskytovatele voláním metody Markers.To zpřístupní čtyři funkce sloužící pro generování značek: WriteFlag, EnterSpan, WriteMessage a WriteAlert.Pro tyto funkce existuje několik přetížení používaných podle toho, zda chcete použít výchozí hodnoty vlastností. Nejjednodušší přetížení přijímá pouze jeden řetězcový parametr určující popis události.Popis je zobrazen v sestavách Vizualizátoru souběžnosti.

Přidání podpory sady SDK do projektů jazyka C# nebo Visual Basic

  1. V řádku nabídek zvolte nabídku Analyzovat, Vizualizátor souběžnosti a Přidat do projektu SDK.

  2. Zvolte projekt, v němž chcete k sadě SDK přistupovat, a poté klikněte na tlačítko Přidat SDK do vybraného projektu.

  3. Přidejte do kódu příkaz imports nebo using.

    using Microsoft.ConcurrencyVisualizer.Instrumentation;
    
    Imports Microsoft.ConcurrencyVisualizer.Instrumentation
    

C++

V jazyce C++ vytvořte objekt marker_series – třída a použijte jej k volání funkcí. Třída marker_series zpřístupňuje tři funkce sloužící ke generování značek, marker_series::write_flag – metoda, marker_series::write_message – metoda a marker_series::write_alert – metoda.

Přidání podpory sady SDK do projektu C++ nebo C

  1. V řádku nabídek zvolte nabídku Analyzovat, Vizualizátor souběžnosti a Přidat do projektu SDK.

  2. Zvolte projekt, v němž chcete k sadě SDK přistupovat, a poté klikněte na tlačítko Přidat SDK do vybraného projektu.

  3. V případě jazyka C++ zahrňte soubor cvmarkersobj.h.V případě jazyka C zahrňte soubor cvmarkers.h.

  4. Přidejte do kódu příkaz using.

    using namespace Concurrency::diagnostic;
    
  5. Vytvořte objekt marker_series a předejte jej do konstruktoru objektu span.

    marker_series mySeries;
    span s(mySeries, _T("Span description"));
    

Vlastní použití

V pokročilých scénářích zpřístupňuje sada SDK Vizualizátoru souběžnosti větší kontrolu. S pokročilými scénáři jsou spojeny dva hlavní koncepty: poskytovatelé značek a řady značek.Poskytovatelé značek jsou rozdílní poskytovatelé ETW (každý má jiný identifikátor GUID).Řady značek jsou sériové kanály událostí generovaných jedním poskytovatelem.Lze je použít k organizaci událostí generovaných poskytovatelem značek.

Použití nového poskytovatele značek v projektu jazyka C# nebo Visual Basic

  1. Vytvořte objekt MarkerWriter. Konstruktor přijímá identifikátor GUID.

  2. Chcete-li zaregistrovat poskytovatele, otevřete dialogové okno Upřesnit nastavení Vizualizátoru souběžnosti. Zvolte záložku Značky a klikněte na tlačítko Přidat nového poskytovatele.V dialogovém okně Upřesnit nastavení zadejte identifikátor GUID použitý pro vytvoření poskytovatele a popis poskytovatele.

Použití nového poskytovatele značek v projektu jazyka C++ nebo C

  1. Inicializujte objekt PCV_PROVIDER pomocí funkce CvInitProvider. Konstruktor přijímá identifikátor GUID * a PCV_PROVIDER *.

  2. Chcete-li zaregistrovat poskytovatele, otevřete dialogové okno Upřesnit nastavení. Zvolte záložku Značky a klikněte na tlačítko Přidat nového poskytovatele.V tomto dialogovém okně zadejte identifikátor GUID použitý pro vytvoření poskytovatele a popis poskytovatele.

Použití řady značek v projektu jazyka C# nebo Visual Basic

  • Chcete-li použít novou řadu značek MarkerSeries, nejprve ji vytvořte pomocí objektu MarkerWriter, a poté vygenerujte události značek přímo z nové řady.

    MarkerSeries series1 = myMarkerWriter.CreateMarkerSeries(″Series 1″);
    series1.WriteFlag(″My flag″);
    
    Dim series1 As New myMarkerWriter.CreateMarkerSeries(″Series 1″)
    series1.WriteFlag(″My flag″)
    

Použití řady značek v projektu C++

  • Vytvořte objekt marker_series. Z této nové řady lze generovat události.

    marker_series series;
    series.write_flag(_T("Hello world!"));
    

Použití řady značek v projektu C

  • Vytvořte objekt PCV_MARKERSERIES pomocí funkce CvCreateMarkerSeries.

    PCV_MARKERSERIES series;
    CvCreatemarkerSeries(myProvider, _T("My Series"), &series);
    CvWriteFlag(series, _T("Writing a flag"));
    

Příbuzná témata

Title

Description

Referenční dokumentace knihoven jazyka C++

Popisuje rozhraní API Vizualizátoru souběžnosti pro jazyk C++.

Referenční dokumentace knihoven jazyka C

Popisuje rozhraní API Vizualizátoru souběžnosti pro jazyk C.

Microsoft.ConcurrencyVisualizer.Instrumentation

Popisuje rozhraní API Vizualizátoru souběžnosti pro spravovaný kód.

Vizualizér souběžnosti

Referenční informace pro zobrazení a sestavy souborů profilovacích dat, které jsou generovány použitím metody souběžnosti a které zahrnují data o spuštění vláken.