タイムライン
タイムライン ウィンドウは、分析に関心のあるスレッドと時間間隔を視覚化して選択するために使用されます。

ウィンドウは次のセクションで構成されています。
プロセス概要  – アプリケーションのアクティビティとイベントの概要ダイアグラム。
スレッドダイアグラム  – スレッドアクティビティダイアグラム。
プロセスの概要
プロセスの概要 ダイアグラムは、プロファイルされたアプリケーションに関連するアプリケーションアクティビティと意味のあるイベントを視覚化します。 このダイアグラムを使用して、CPU 負荷が高い間隔、長いブロッキング GC 間隔、UI フリーズ間隔など、分析に適した時間間隔を決定して選択します。

タイムラインの概要
この概要を使用して、CPU 使用率を評価し、 プロセスの概要 および スレッド ダイアグラムですばやく移動します。
概要のどこかをクリックして、表示可能な時間範囲を選択します。 範囲のサイズは自動的に定義されます。
スライドバーをドラッグして、表示可能な時間範囲を選択します。
スライドバーの端を動かしてサイズを変更します。
左側のズームスライダを使用して、 プロセスの概要 および スレッド ダイアグラムをズームします。
ガベージコレクションのブロック
ブロッキングガベージコレクション (GC) が実行される時間間隔。 ブロッキング GC を実行するために、CLR はすべてのマネージドスレッドを一時停止します。 GC 分析の詳細については、 ガベージコレクションイベントを参照してください。
UI フリーズ
ユーザーインターフェースが応答しない時間間隔。 より具体的には、これらは、ウィンドウメッセージが 200 ミリ秒を超えてポンピングされない、または特定のメッセージの処理に 200 ミリ秒を超える時間がかかる時間間隔です。
フィルタリングされた時間間隔
フィルターを適用した結果として選択された時間間隔。
スレッドダイアグラム
スレッド ダイアグラムは、スレッドのアクティビティとフィルタリングされた時間間隔(フィルターが適用されている場合)を視覚化します。 ダイアグラムを使用して、分析に興味のあるスレッドと時間間隔を選択します。

このダイアグラムは、スレッドごとに次のデータを示しています。
ID(識別子)の略称です。 | スレッド識別子。 |
タイプ | スレッド名 (マネージドスレッドの場合のみ表示) またはスレッドタイプ (スレッドに名前がない場合)。 dotTrace は、次のスレッドタイプを区別します。
|
ms/MB/ イベント | フィルタリングされた時間 / 割り当てられたメモリ / イベントの数。 例: 未選択 イベントが選択され、他のフィルターが適用されていない場合、これはスレッドの存続期間全体になります。 たとえば、 スレッドの状態 フィルターで 待機 を選択した場合、この時間はすべての 待機 時間間隔の合計になります。 |
% | フィルタリングされた時間 / 割り当てられたメモリ / 選択したすべての時間間隔に対するイベント数 / 割り当てられたメモリ / イベント数のパーセンテージ。 |
スレッドアクティビティタイムライン | タイムラインは、実行中、待機中、準備完了というスレッド状態を区別します(スレッド状態フィルターに対応)。 フィルターを適用すると、タイムラインでフィルターされた時間間隔またはポイントイベントがハイライトされます。 スレッドタイムラインでは、特定の時点のアクティビティに関する詳細情報をスマートツールチップに表示することもできます。 ツールチップを表示するには、特定の時点にマウスを移動します。 ツールチップは状況に応じて変化し、選択したフィルターに応じて追加のデータを表示します。 ![]() |
スレッドを選択
特定のスレッドを選択するには
目的のスレッドをクリックします。
スレッドを選択すると、 スレッド によるフィルターが適用されます。 その他のフィルターはすべて、選択したスレッドのデータのみを表示します。
場合によっては、特定のタイプのスレッドをすべて選択すると便利です。
スレッドをタイプ別に選択するには
選択するタイプに属するスレッドのコンテキストメニューを開きます。
コンテキストメニューで すべての <タイプ名> スレッドを選択 を選択します。
スレッドを非表示
分析を簡素化するために、現在興味のないスレッドを非表示にすることができます(たとえば、選択した時間間隔で作業を実行しないなど)。
特定のスレッドを非表示にするには
非表示にするスレッドのコンテキストメニューを開きます。
コンテキストメニューで、 スレッド #<ID> を隠す を選択します。
選択したスレッドを非表示にするには
スレッドを選択します。
コンテキストメニューで、 選択したスレッドを非表示にする または 非選択スレッドを非表示にする を選択します。
スレッドをタイプによって隠すには
隠すタイプに属するスレッドのコンテキストメニューを開きます。
コンテキストメニューで、 すべての <Type_Name> スレッドを非表示にする を選択します。
スレッドの並べ替え
デフォルトでは、スレッドのリストは作成順にソートされます。 列ヘッダーをクリックすると、他の条件でスレッドを並べ替えることができます: ID(識別子)の略称です。、 タイプ、 ms/MB/ イベント、 %。 現在ソートに使用されている列には、
記号が付いています。
場合によっては、並べ替え順序に関係なく、リストの上に特定のスレッドを持つと便利です。 スレッドのコンテキストメニューの 一番上に移動 オプションを使用して、スレッドを一番上に移動します。
時間間隔を選択
任意の時間間隔を選択するには
マウスの左ボタンを押しながら希望の間隔にマウスをドラッグします。
間隔を選択すると、 選択された時間間隔 フィルターが適用されます。 他のすべてのフィルターは、この時間範囲のデータのみを表示します。

これは、分析に意味のある時間間隔を分析するために使用します。 例: CPU 負荷が最大になったときに実行されたメソッドを決定します。
ダイアグラムを使用して、UI のフリーズ間隔をすばやく選択することもできます。
UI フリーズ時間間隔を選択するには
特定の UI フリーズをクリックして、フリーズ時間間隔と対応する UI スレッドを選択します。 凍結解析の詳細については、 インターバルフィルター | UI フリーズフィルターを参照してください。
UI フリーズ間隔を選択すると、フリーズ時間間隔によるフィルターと UI スレッドが適用されます。 他のすべてのフィルターは、UI スレッドと選択された時間間隔のデータのみを表示します。

ダイアグラムをズームする
ダイアグラムを拡大 / 縮小するには
次のいずれかを実行します。
マウスのスクロールホイールを使用します。
Ctrl(コントロール) を押しながら、マウスの左ボタンを押したままドラッグします。
ダイアグラムをズームした後、 表示可能時間間隔 フィルターが適用されます。 他のすべてのフィルターには、現在表示されている範囲のデータのみが表示されます。
ダイアグラムで時間間隔が選択されている場合、この間隔を拡大することができます。
選択した時間間隔にズームインするには
Ctrl + O を押すか、コンテキストメニューで 選択範囲にズーム を選択します。
この後、選択した時間範囲がダイアグラム全体を取ります。
ダイアグラムをパンする
マウスの右ボタンを押したままドラッグします。
