次の方法で共有


同時実行ビジュアライザー SDK

同時実行ビジュアライザーの追加情報を表示するために、同時実行ビジュアライザー SDK を使用して、ソース・コードをインストルメントできます。フェーズと追加コードやデータのイベントを関連付けることができます。これらの追加の視覚化、マーカーと呼ばれます。入門編のチュートリアルでは、参照してください 同時実行ビジュアライザー SDK の概要

プロパティ

フラグは、範囲とメッセージにそれぞれ 2 とおりのプロパティがあります: カテゴリと重要度です。詳細設定 ダイアログ ボックスで、表示するマーカーのセットをフィルター処理するためにこれらのプロパティを使用できます。また、これらのプロパティは、マーカーのビジュアル表現に影響します。重要度を表すには、たとえば、フラグのサイズが使用されます。さらにカテゴリを示すために、色が使用されます。

基本的な使用法

同時実行ビジュアライザーは、マーカーを生成するために使用できる既定のプロバイダーを公開します。プロバイダーは、同時実行ビジュアライザーとともに登録され、マーカーを UI に表示されるように何も行う必要はありません。

C# および Visual Basic

C# では、Visual Basic などのマネージ コードが Markersを呼び出すことにより、既定のプロバイダーを使用します。これはマーカーを生成するための 4 種類の関数を公開します: WriteFlagEnterSpanWriteMessageWriteAlert。プロパティに既定を使用するか、これらの関数に対する複数のオーバーロード) です。最も単純なオーバーロードはイベントの説明を指定する文字列パラメーターを受け取ります。説明は同時実行ビジュアライザー レポートに表示されます。

C# または Visual Basic で SDK のサポートを追加するには、

  1. メニュー バーで、[同時実行ビジュアライザー][プロジェクトへの SDK の追加][解析] をクリックします。

  2. 、SDK にアクセスし、[選択したプロジェクトに SDK を追加] をクリックするプロジェクトを選択します。

  3. コードに Imports ステートメントまたは using ステートメントを追加します。

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

C++

C++ では、marker_series クラス オブジェクトを作成し、関数を呼び出すために使用します。marker_series クラスは、マーカー marker_series::write_flag メソッドmarker_series::write_message メソッドmarker_series::write_alert メソッドを生成するための 3 種類の機能を公開します。

C ++.または C に SDK のサポートを追加するには、

  1. メニュー バーで、[同時実行ビジュアライザー][プロジェクトへの SDK の追加][解析] をクリックします。

  2. 、SDK にアクセスし、[選択したプロジェクトに SDK を追加] をクリックするプロジェクトを選択します。

  3. C++ では、cvmarkersobj.hを含めます。C では、cvmarkers.hを含めます。

  4. コードにステートメントを追加します。

    using namespace Concurrency::diagnostic;
    
  5. marker_series オブジェクトを作成し、span のコンストラクターに渡します。

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

カスタムの使用

高度なシナリオでは、同時実行ビジュアライザー SDK には、他のコントロールを公開します。2 種類の主要な機能は、より高度なシナリオに関連付けられています。: マーカーのプロバイダーおよびマーカーのシリーズ。マーカーのプロバイダーは、ETW のプロバイダーです (それぞれに異なる GUID が含まれます。マーカーのシリーズは 1 個のプロバイダーによって生成されるイベントのシリアル チャネルです。マーカーのプロバイダーによって生成されるイベントを整理することもできます。

C# または Visual Basic で新しいマーカーのプロバイダーを使用するには、

  1. MarkerWriter オブジェクトを作成します。コンストラクターは、GUID を取得します。

  2. プロバイダーを登録するには、同時実行ビジュアライザーを 詳細設定 ダイアログ ボックスを開きます。[マーカー] タブを選択し、[新しいプロバイダーの追加] ボタンをクリックします。詳細設定 ダイアログ ボックスで、プロバイダーのプロバイダーと説明を作成するために使用される GUID を入力します。

C ++.または C で新しいマーカーのプロバイダーを使用するには、

  1. PCV_PROVIDER を初期化するために CvInitProvider 関数を使用します。コンストラクターは GUID* と PCV_PROVIDER* を受け取ります。

  2. プロバイダーを登録するには、詳細設定 ダイアログ ボックスを開きます。[マーカー] タブを選択し、[新しいプロバイダーの追加] ボタンをクリックします。このダイアログ ボックスでは、プロバイダーのプロバイダーと説明を作成するために使用される GUID を入力します。

C# または Visual Basic のマーカーのシリーズを使用するには、

  • 新しい MarkerSeriesを使用するには、最初に MarkerWriter オブジェクトを使用して作成し、新しいシリーズのマーカー イベントを直接生成します。

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

C++ プロジェクトで.マーカーのシリーズを使用するには、

  • marker_series オブジェクトを作成します。この新しい一連のイベントを生成します。

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

C++.でマーカーのシリーズを使用するには、

  • PCV_MARKERSERIES の作成に CvCreateMarkerSeries 関数を使用します。

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

関連トピック

タイトル

説明

C++ ライブラリ リファレンス

C++ の同時実行ビジュアライザー API について説明します。

C ライブラリ リファレンス

C.の同時実行ビジュアライザー API について説明します。

Microsoft.ConcurrencyVisualizer.Instrumentation

マネージ コードの同時実行ビジュアライザー API について説明します。

同時実行ビジュアライザー

同時実行方式を使用して生成され、スレッド実行データを含むプロファイル データ ファイルのビューとレポートに関するリファレンス情報。