本申請涉及計算機(jī),特別涉及一種函數(shù)耗時確定方法、裝置、設(shè)備及存儲介質(zhì)。
背景技術(shù):
1、在應(yīng)用程序的運(yùn)行過程中,一般需要統(tǒng)計該應(yīng)用程序中包括的不同函數(shù)方法的耗時,以對該應(yīng)用程序的運(yùn)行情況進(jìn)行分析。這里的函數(shù)方法是指在該應(yīng)用程序中執(zhí)行不同任務(wù)的代碼塊。
2、相關(guān)技術(shù)中,一般在函數(shù)方法的開頭和結(jié)尾分別打點(diǎn),以確定該函數(shù)方法的開始運(yùn)行時間和結(jié)束運(yùn)行時間,從而確定運(yùn)行耗時。
3、然而,相關(guān)技術(shù)中手動打點(diǎn)的方式,導(dǎo)致函數(shù)方法耗時的確定效率較低。
技術(shù)實(shí)現(xiàn)思路
1、本申請實(shí)施例提供了一種函數(shù)耗時確定方法、裝置、設(shè)備及存儲介質(zhì),能夠提升函數(shù)耗時確定效率。本申請?zhí)岢龅募夹g(shù)方案如下:
2、根據(jù)本申請實(shí)施例的一個方面,提供了一種函數(shù)耗時確定方法,所述方法包括:
3、在編譯應(yīng)用程序的過程中,為所述應(yīng)用程序包括的多個函數(shù)方法分別插入第一邏輯代碼,所述第一邏輯代碼用于確定所述函數(shù)方法的運(yùn)行耗時,所述多個函數(shù)方法是用于執(zhí)行所述應(yīng)用程序的不同任務(wù)的代碼塊;
4、在編譯后運(yùn)行所述應(yīng)用程序的過程中,若運(yùn)行所述多個函數(shù)方法中的第一函數(shù)方法,則通過所述第一函數(shù)方法中插入的所述第一邏輯代碼,以反射所述第一函數(shù)方法的方式,獲取所述第一函數(shù)方法的運(yùn)行耗時;其中,反射所述第一函數(shù)方法的方式是指重新運(yùn)行所述第一函數(shù)方法。
5、根據(jù)本申請實(shí)施例的一個方面,提供了一種函數(shù)耗時確定裝置,所述裝置包括:
6、代碼插入模塊,用于在編譯應(yīng)用程序的過程中,為所述應(yīng)用程序包括的多個函數(shù)方法分別插入第一邏輯代碼,所述第一邏輯代碼用于確定所述函數(shù)方法的運(yùn)行耗時,所述多個函數(shù)方法是用于執(zhí)行所述應(yīng)用程序的不同任務(wù)的代碼塊;
7、耗時獲取模塊,在編譯后運(yùn)行所述應(yīng)用程序的過程中,若運(yùn)行所述多個函數(shù)方法中的第一函數(shù)方法,則通過所述第一函數(shù)方法中插入的所述第一邏輯代碼,以反射所述第一函數(shù)方法的方式,獲取所述第一函數(shù)方法的運(yùn)行耗時;其中,反射所述第一函數(shù)方法的方式是指重新運(yùn)行所述第一函數(shù)方法。
8、根據(jù)本申請實(shí)施例的一個方面,提供了一種計算機(jī)設(shè)備,所述計算機(jī)設(shè)備包括處理器和存儲器,所述存儲器中存儲有計算機(jī)程序,所述計算機(jī)程序由所述處理器加載并執(zhí)行以實(shí)現(xiàn)上述函數(shù)耗時確定方法。
9、根據(jù)本申請實(shí)施例的一個方面,提供了一種計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可讀存儲介質(zhì)中存儲有計算機(jī)程序,所述計算機(jī)程序由處理器加載并執(zhí)行以實(shí)現(xiàn)上述函數(shù)耗時確定方法。
10、根據(jù)本申請實(shí)施例的一個方面,提供了一種計算機(jī)程序產(chǎn)品,所述計算機(jī)程序產(chǎn)品包括計算機(jī)程序,所述計算機(jī)程序由處理器加載并執(zhí)行以實(shí)現(xiàn)上述函數(shù)耗時確定方法。
11、本申請實(shí)施例提供的技術(shù)方案可以帶來如下有益效果:
12、相比于相關(guān)技術(shù)中兩次手動打點(diǎn)的方式,本申請?zhí)峁┑募夹g(shù)方案,在編譯應(yīng)用程序的過程中,為各個函數(shù)方法分別插入用于確定函數(shù)方法的運(yùn)行耗時的第一邏輯代碼。也即,本申請對于一個函數(shù)方法,僅需自動插入第一邏輯代碼,不用兩次手動打點(diǎn)。在運(yùn)行該應(yīng)用程序的過程中,通過第一函數(shù)方法中插入的第一邏輯代碼,重新運(yùn)行第一函數(shù)方法來自動確定該第一函數(shù)方法的運(yùn)行耗時。因此,本申請通過第一邏輯代碼實(shí)現(xiàn)了函數(shù)耗時的自動確定,提升了函數(shù)耗時的確定效率。
1.一種函數(shù)耗時確定方法,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述通過所述第一函數(shù)方法中插入的所述第一邏輯代碼,以反射所述第一函數(shù)方法的方式,獲取所述第一函數(shù)方法的運(yùn)行耗時,包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述第一邏輯代碼包括第一記錄函數(shù)、反射邏輯代碼以及第二記錄函數(shù);
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述基于所述第一時間節(jié)點(diǎn)和所述第二時間節(jié)點(diǎn),確定所述第一函數(shù)方法的運(yùn)行耗時,包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述第一函數(shù)方法中還包括插入的第二邏輯代碼;所述方法還包括:
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述執(zhí)行條件包括以下至少之一:
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述在編譯應(yīng)用程序的過程中,為所述應(yīng)用程序包括的多個函數(shù)方法分別插入第一邏輯代碼,包括:
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述為所述篩選后的多個函數(shù)方法分別插入邏輯代碼,包括:
9.根據(jù)權(quán)利要求1至8任一項(xiàng)所述的方法,其特征在于,所述方法還包括:
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,所述方法還包括:
11.根據(jù)權(quán)利要求10所述的方法,其特征在于,所述方法還包括:
12.根據(jù)權(quán)利要求11所述的方法,其特征在于,所述觸發(fā)條件包括:運(yùn)行所述應(yīng)用程序的計算機(jī)設(shè)備上安裝有第一插件,以及接收到針對所述第一函數(shù)方法的第一操作;所述方法還包括:
13.一種函數(shù)耗時確定裝置,其特征在于,所述裝置包括:
14.一種計算機(jī)設(shè)備,其特征在于,所述計算機(jī)設(shè)備包括處理器和存儲器,所述存儲器中存儲有計算機(jī)程序,所述計算機(jī)程序由所述處理器加載并執(zhí)行以實(shí)現(xiàn)如權(quán)利要求1至12任一項(xiàng)所述的函數(shù)耗時確定方法。
15.一種計算機(jī)可讀存儲介質(zhì),其特征在于,所述計算機(jī)可讀存儲介質(zhì)中存儲有計算機(jī)程序,所述計算機(jī)程序由處理器加載并執(zhí)行以實(shí)現(xiàn)如權(quán)利要求1至12任一項(xiàng)所述的函數(shù)耗時確定方法。
16.一種計算機(jī)程序產(chǎn)品,其特征在于,所述計算機(jī)程序產(chǎn)品包括計算機(jī)程序,所述計算機(jī)程序存儲在計算機(jī)可讀存儲介質(zhì)中,處理器從所述計算機(jī)可讀存儲介質(zhì)讀取并執(zhí)行所述計算機(jī)程序,以實(shí)現(xiàn)如權(quán)利要求1至12任一項(xiàng)所述的函數(shù)耗時確定方法。