[發明專利]性能數據的采集方法、展示方法、電子設備和客戶端在審
| 申請號: | 201711055145.1 | 申請日: | 2017-11-01 |
| 公開(公告)號: | CN109753414A | 公開(公告)日: | 2019-05-14 |
| 發明(設計)人: | 劉韓松;魯強;賈樂 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | G06F11/34 | 分類號: | G06F11/34;G06F9/50 |
| 代理公司: | 北京三友知識產權代理有限公司 11127 | 代理人: | 李輝;周達 |
| 地址: | 英屬開曼*** | 國省代碼: | 開曼群島;KY |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 采樣線程 電子設備 方法執行 性能數據 客戶端 采集 內存緩存區 程序開發 緩存容器 間隔采樣 數據采集 初始化 線程 棧幀 應用 展示 便利 記錄 申請 | ||
1.一種性能數據的采集方法,其特征在于,所述方法包括:
在應用方法執行的過程中,初始化一個棧幀緩存容器;所述棧幀緩存容器用于存儲所述應用方法對應的線程最后一個棧幀數組;
初始化一個內存緩存區,所述內存緩存區用于記錄所述應用方法執行的進出棧時間、CPU時間;
初始化采樣線程,所述采樣線程用于控制其他線程的數據采集和運行;
利用初始化好的所述采樣線程,通過間隔采樣的方式,采集得到所述應用方法執行的性能數據。
2.根據權利要求1所述的方法,其特征在于,所述性能數據至少包括以下至少之一:方法執行耗時、方法執行CPU耗時、線程調度數據。
3.根據權利要求1所述的方法,其特征在于,所述通過間隔采樣的方式,得到所述應用方法執行的性能數據,包括:
暫停執行所述應用方法的線程;
將所述線程的最后一個棧幀數組存儲入所述棧幀緩存容器;所述最后一個棧幀數組包括所述線程所執行的方法信息;
將所述最后一個棧幀數組與之前存儲的所述應用方法的棧幀數組進行對比;其中,存儲的棧幀數組與所述最后一個棧幀數組具有不同的生成時間;
在二者不同的情況下,記錄發生變更的方法信息的進出棧時間。
4.根據權利要求3所述的方法,其特征在于,在讀取所述線程的最后一個棧幀數組的步驟中包括:讀取所述執行線程的程序指針指向的棧幀數組;其中,所述程序指針指向所述應用方法當前執行的棧幀數組。
5.根據權利要求3所述的方法,其特征在于,將所述最后一個棧幀數組與之前存儲的所述應用方法的棧幀數組進行對比,包括:
將存儲的棧幀數組中生成時間與所述最后一個棧幀數組較為接近的棧幀數組與所述最后一個棧幀數組進行對比。
6.根據權利要求3所述的方法,其特征在于,所述進出棧時間包括執行開始時間;
所述記錄發生變更的方法信息的進出棧時間,包括:
在發生變更的方法信息為所述最后一個棧幀數組相較于之前存儲的所述棧幀數組增加了方法信息的情況下,將當前時間作為所述方法信息的執行開始時間進行記錄。
7.根據權利要求3所述的方法,其特征在于,所述進出棧時間包括執行結束時間;
所述記錄發生變更的方法信息的進出棧時間,包括:
在發生變更的方法信息為所述最后一個棧幀數組相較于之前存儲的所述棧幀數組減少了方法信息的情況下,將當前時間作為所述方法信息的執行結束時間進行記錄。
8.根據權利要求1所述的方法,其特征在于,所述方法還包括:
展示包括線程標識和時間軸的第一界面;所述線程標識用于表示所述線程;
在所述線程標識發生第一觸發事件的情況下,展示第二界面;其中,所述第二界面包括所述線程標識表示的線程所調用的方法信息,以及所述方法信息相對于所述時間軸的位置表示所述方法信息的所述進出棧時間。
9.根據權利要求8所述的方法,其特征在于,在所述第二界面中,沿著豎直方向相鄰的兩個方法信息之間存在調用關系。
10.根據權利要求8所述的方法,其特征在于,所述第一界面的時間軸具有第一度量單位;所述第二界面的時間軸具有第二度量單位;所述第一度量單位和所述第二度量單位不同。
11.根據權利要求8所述的方法,其特征在于,所述方法還包括:
在所述第二界面中,在所述方法信息發生第二觸發事件的情況下,在接近所述方法信息的位置顯示所述方法信息的實際執行時間、CPU占用時間和方法執行CPU耗時。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711055145.1/1.html,轉載請聲明來源鉆瓜專利網。





