「執行流程」視圖和表格

「執行流程」視圖和表格都會顯示整個程式執行過程的表示法。 在視圖中,程式的執行緒會水平納入,而且會調整時間,使得整個執行過程都能垂直納入。在表格中,執行緒會群組在第一個直欄中,時間則記錄在後續的列中。

僅當您啟用了執行流程資訊的收集功能時,才可使用「執行流程」視圖和表格;您可在啟動或連接要側寫的應用程式時執行這個動作。請選取側寫選項應用程式太慢,然後從「詳細資料」選項中,選取顯示執行流程圖形式詳細資料。 

視圖顯示畫面

以下是「執行流程」視圖的範例:

垂直線集合;頂端為方法標籤;其上方為控制項;數字沿著右邊顯示;有一些分散的水平線

當某個方法呼叫另一個方法時,若它的回應方法會輪流地呼叫另一個方法,依此類推, 線條會重疊顯示在右邊。線條是按照執行緒群組在直欄中。直欄與直欄之間會有一條細而黑的線條隔開它們。 每一個執行緒的名稱出現在其直欄的頂端。

您可以使用「放大」工具放大來展開圖形。

「執行流程」視圖會顯示下列資訊:

線條橙色線條的片段
這些線條表示執行緒中的方法。顏色編碼則表示物件的類別。最左邊標示為 GC 的線條為記憶體回收。
時間其中有數目的灰色晶片
時間會以秒數測量,其位於縱軸且從頂端開始。線條的高度表示執行方法所花的時間。
名稱、引數和類型黑色水平線要掛著一些有顏色的線條,其標示為 actionPerformed、addButton、repaint
最上面的黑線表示類別 actionPerformed 呼叫類別 addButton,而類別呼叫類別 repaint。這些線條是黑色的, 但如果方法是一個建構子,線條和標籤會是紅色。

如果是從監視器物件開啟視圖, 則會顯示該監視器之下所有代理程式的執行過程。執行緒的名稱 會顯示對應程序的 ID,以便與不同程序中的同名執行緒做出區分。

記憶體回收執行緒

依預設,最左邊的直欄會顯示 GC(記憶體回收)執行緒, 其包含從這個監視器下的所有程序收集到的物件。每當物件發生記憶體回收時,這個直欄中就會出現一個細矩形。 如同視圖中的其他物件和方法,您可以按一下已發生記憶體回收的物件來選取它。 大型浮雕灰色矩形代表側寫階段作業中的記憶體回收階段。

表格顯示畫面

以下是「執行流程」表的範例:

具有 3 個直欄的表格,其標示為「執行緒名稱」、「實例名稱」和「開始時間」

表格中可用的資訊和視圖中相同。

控制項

視圖和表格的工具列都包含下列控制項:

選取區域「選取區域」按鈕
選取要放大的圖形部分。
放大「放大」按鈕
放大圖形。
縮小「縮小」按鈕
縮小圖形。
起始「起始」按鈕
將顯示畫面重設為原來的大小和位置。
圖形顏色「列顏色」按鈕
變更正在檢視之圖形的顏色。這項變更僅會套用在目前作用中的「執行流程」圖形。如果要變更所有「執行流程」圖形的圖形顏色, 請使用視窗 > 喜好設定 > 側寫和日誌記載 > 外觀 > 執行流程圖形。 

「選擇圖形顏色」對話框
 
功能表 > 顯示時間顯示具有「顯示時間」之下拉功能表的片段
選取圖形的時間基礎。原始時間是執行應用程式所花的時間,包括側寫額外負荷。補償時間(預設值)是應用程式所花的時間,減去側寫作業用掉的時間。

圖形上的控制項

在圖形的主體中也有一些控制項。您可以將滑鼠指向某一線條來顯示狀態資訊(例如:範例狀態行,如下所述

指向視圖中的其他位置會顯示執行緒名稱,以及對應至指標之垂直位置的時間。

蹦現控制項

蹦現控制項包含以下項目:

重新整理視圖
更新所有「側寫和日誌記載」視圖。
圖形顏色
和「圖形顏色」按鈕相同。 
偵測所有重複項目
顯示 X 來識別常呼叫的方法。
隱藏所有重複項目
隱藏顯示常呼叫方法上的 X。
執行緒 > 顯示所有執行緒
顯示所有屬於所選資源的執行緒。
執行緒 > 隱藏所有執行緒
隱藏所有屬於所選資源的執行緒。
執行緒 > GC
顯示「記憶體回收」執行緒。
執行緒 > 執行緒名稱
顯示指名的執行緒。
起始
將原來的圖形回到第一次開啟時的狀態。
顯示執行表
以表格而非圖形來顯示資訊。
顯示方法呼叫
顯示相同的資訊,但也顯示給定方法的呼叫方法。
開啟程式碼
開啟編輯視圖,其中包含所選的程式碼。方法、類別或套件必須在工作台中。

相關概念
側寫工具總覽
側寫資源

相關作業
側寫應用程式
檢視效能瓶頸
檢視方法的呼叫和呼叫端
識別程式執行的階段
識別作用中的執行緒
識別大量消耗資源的方法
指導教學:分析 Java 程序的側寫資料

 

 
 

>