[發明專利]程序檢測方法和系統在審
| 申請號: | 201810356737.5 | 申請日: | 2018-04-19 |
| 公開(公告)號: | CN110389888A | 公開(公告)日: | 2019-10-29 |
| 發明(設計)人: | 段云飛 | 申請(專利權)人: | 北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06F8/41 |
| 代理公司: | 中科專利商標代理有限責任公司 11021 | 代理人: | 呂雁葭 |
| 地址: | 100195 北京市海淀區杏石口路6*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 檢測 程序檢測 運行狀態數據 程序獲取 | ||
本公開提供了一種程序檢測方法,包括:運行特定程序,其中,所述特定程序中包括檢測程序以及被檢測程序;以及在運行所述特定程序的過程中,自動通過檢測程序獲取所述被檢測程序的運行狀態數據。
技術領域
本公開涉及計算機技術領域,更具體地,涉及一種程序檢測方法和一種程序檢測系統。
背景技術
隨著計算機和互聯網技術的快速發展,通過計算機程序實現的功能廣泛地應用于各個領域中。例如通過計算機開發的多種應用程序能夠滿足用戶的工作和娛樂。但是,在程序運行過程中通常存在程序運行異常(例如執行緩慢)的情況,因此如何方便并快速地得到程序的運行狀態數據,并通過該運行狀態數據分析程序運行異常的原因成為亟待解決的問題。
在實現本公開構思的過程中,發明人發現現有技術中至少存在如下問題,現有的獲取關于程序的運行狀態數據通常需要人為參與,且較為繁瑣,不夠便捷,耗費人工成本。
發明內容
有鑒于此,本公開提供了一種優化的程序檢測方法和一種程序檢測系統。
本公開的一個方面提供了一種程序檢測方法,包括:運行特定程序,其中,所述特定程序中包括檢測程序以及被檢測程序,以及在運行所述特定程序的過程中,自動通過檢測程序獲取所述被檢測程序的運行狀態數據。
根據本公開的實施例,上述方法還包括:通過注解數據獲取待編譯檢測程序,將所述待編譯檢測程序編譯到所述特定程序中,使得所述特定程序包括所述檢測程序。
根據本公開的實施例,上述待編譯檢測程序包括多個待編譯程序片段,所述將所述待編譯檢測程序編譯到所述特定程序中,包括:根據所述注解數據,將所述多個待編譯程序片段分別編譯到所述特定程序的特定位置。
根據本公開的實施例,上述運行特定程序包括通過注解數據調用所述檢測程序。
根據本公開的實施例,上述運行特定程序包括通過第一線程運行所述特定程序,所述通過檢測程序獲取所述被檢測程序的運行狀態數據包括:通過所述檢測程序啟用第二線程獲取所述被檢測程序的運行狀態數據。
根據本公開的實施例,上述檢測程序包括第一程序片段和第二程序片段,其中,所述第一程序片段用于啟用所述第二線程,所述第二程序片段用于關閉所述第二線程,所述第一程序片段在所述被檢測程序運行之前運行,所述第二程序片段在所述被檢測程序運行之后運行。
根據本公開的實施例,上述在運行所述特定程序的過程中,自動通過檢測程序獲取所述被檢測程序的運行狀態數據,包括:在運行所述特定程序的過程中,自動通過檢測程序獲取被檢測程序在運行過程中的堆棧信息,基于所述堆棧信息,確定所述被檢測程序的運行狀態數據。
根據本公開的實施例,上述被檢測程序的運行狀態數據包括所述被檢測程序的運行時間數據,所述通過檢測程序獲取被檢測程序在運行過程中的堆棧信息,包括:每隔預設時間間隔,獲取所述被檢測程序在運行過程中的堆棧信息,得到至少一個堆棧信息,所述基于所述堆棧信息,確定所述被檢測程序的運行狀態數據,包括:基于所述至少一個堆棧信息以及所述預設時間間隔,確定所述被檢測程序的運行時間數據。
根據本公開的實施例,上述方法還包括:根據所述堆棧信息,判斷所述被檢測程序的運行狀態數據是否滿足第一預設條件。
根據本公開的實施例,上述被檢測程序包括多個函數,所述方法還包括:在所述被檢測程序的運行狀態數據不滿足第一預設條件的情況下,獲取所述多個函數中的每個函數對應的堆棧信息,根據所述每個函數對應的堆棧信息,判斷所述多個函數的運行狀態數據是否滿足第二預設條件。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司,未經北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810356737.5/2.html,轉載請聲明來源鉆瓜專利網。





