[發(fā)明專利]代碼處理方法、裝置、電子設(shè)備及計(jì)算機(jī)可讀介質(zhì)有效
| 申請?zhí)枺?/td> | 202010048686.7 | 申請日: | 2020-01-16 |
| 公開(公告)號: | CN111258557B | 公開(公告)日: | 2023-08-18 |
| 發(fā)明(設(shè)計(jì))人: | 郭靜 | 申請(專利權(quán))人: | OPPO(重慶)智能科技有限公司 |
| 主分類號: | G06F8/20 | 分類號: | G06F8/20;G06F8/41;G06F9/455 |
| 代理公司: | 深圳市智圈知識產(chǎn)權(quán)代理事務(wù)所(普通合伙) 44351 | 代理人: | 呂靜 |
| 地址: | 401120 重慶*** | 國省代碼: | 重慶;50 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 代碼 處理 方法 裝置 電子設(shè)備 計(jì)算機(jī) 可讀 介質(zhì) | ||
本申請公開了一種代碼處理方法、裝置、電子設(shè)備及計(jì)算機(jī)可讀介質(zhì),涉及計(jì)算機(jī)技術(shù)領(lǐng)域。該方法包括:獲取編譯單元的代碼數(shù)量;獲取編譯單元的被執(zhí)行次數(shù);根據(jù)所述代碼數(shù)量和所述被執(zhí)行次數(shù),確定所述編譯單元是否為熱點(diǎn)代碼;若所述編譯單元為熱點(diǎn)代碼,則執(zhí)行預(yù)設(shè)操作。因此,基于編譯單元的代碼數(shù)量和被執(zhí)行次數(shù)來確定編譯單元是否為熱點(diǎn)代碼,相比僅根據(jù)執(zhí)行次數(shù)來確定熱點(diǎn)代碼而言,使得判斷維度更加豐富,使得熱點(diǎn)代碼的確定更加準(zhǔn)確。
技術(shù)領(lǐng)域
本申請涉及計(jì)算機(jī)技術(shù)領(lǐng)域,更具體地,涉及一種代碼處理方法、裝置、電子設(shè)備及計(jì)算機(jī)可讀介質(zhì)。
背景技術(shù)
目前,JavaScript引擎通過字節(jié)碼解釋和熱點(diǎn)代碼編譯成機(jī)器碼的方式來執(zhí)行JavaScript源代碼,即通過編譯器將Java源碼編譯成字節(jié)碼,通過JVM(Java?VirtualMachine,Java虛擬機(jī))的解釋器將字節(jié)碼逐行解釋為機(jī)器指令并執(zhí)行。
當(dāng)虛擬機(jī)發(fā)現(xiàn)某個方法或者代碼塊運(yùn)行特別頻繁時,就會把這些代碼認(rèn)定為“hotspot?code”(熱點(diǎn)代碼),將之記錄下來保存到profile文件,為了提高熱點(diǎn)代碼的執(zhí)行效率,在運(yùn)行時,虛擬機(jī)將會把這些代碼編譯成機(jī)器碼。
目前,確定熱點(diǎn)代碼的方式大多是統(tǒng)計(jì)方法函數(shù)或代碼塊的執(zhí)行次數(shù),將次數(shù)較高的方法函數(shù)或代碼塊作為熱點(diǎn)代碼,使得熱點(diǎn)代碼的確定不夠準(zhǔn)確。
發(fā)明內(nèi)容
本申請?zhí)岢隽艘环N代碼處理方法、裝置、電子設(shè)備及計(jì)算機(jī)可讀介質(zhì),以改善上述缺陷。
第一方面,本申請實(shí)施例提供了一種代碼處理方法,包括:獲取編譯單元的代碼數(shù)量;獲取編譯單元的被執(zhí)行次數(shù);根據(jù)所述代碼數(shù)量和所述被執(zhí)行次數(shù),確定所述編譯單元是否為熱點(diǎn)代碼;若所述編譯單元為熱點(diǎn)代碼,則執(zhí)行預(yù)設(shè)操作。
第二方面,本申請實(shí)施例還提供了代碼處理裝置,包括:第一獲取模塊、第二獲取模塊、確定模塊和執(zhí)行模塊。第一獲取模塊,用于獲取編譯單元的代碼數(shù)量。第二獲取模塊,用于獲取編譯單元的被執(zhí)行次數(shù)。確定模塊,用于根據(jù)所述代碼數(shù)量和所述被執(zhí)行次數(shù),確定所述編譯單元是否為熱點(diǎn)代碼。執(zhí)行模塊,用于若所述編譯單元為熱點(diǎn)代碼,則執(zhí)行預(yù)設(shè)操作。
第三方面,本申請實(shí)施例還提供了一種電子設(shè)備,包括:一個或多個處理器;存儲器;一個或多個應(yīng)用程序,其中所述一個或多個應(yīng)用程序被存儲在所述存儲器中并被配置為由所述一個或多個處理器執(zhí)行,所述一個或多個應(yīng)用程序配置用于執(zhí)行上述方法。
第四方面,本申請實(shí)施例還提供了一種計(jì)算機(jī)可讀介質(zhì),所述計(jì)算機(jī)可讀介質(zhì)存儲有處理器可執(zhí)行的程序代碼,所述程序代碼被所述處理器執(zhí)行時使所述處理器執(zhí)行上述方法。
本申請?zhí)峁┑拇a處理方法、裝置、電子設(shè)備及計(jì)算機(jī)可讀介質(zhì),分別獲取編譯單元的代碼數(shù)量和被執(zhí)行次數(shù),并且根據(jù)代碼數(shù)量和所述被執(zhí)行次數(shù),確定所述編譯單元是否為熱點(diǎn)代碼,在確定編譯單元為熱點(diǎn)代碼的情況下,執(zhí)行預(yù)設(shè)操作。因此,基于編譯單元的代碼數(shù)量和被執(zhí)行次數(shù)來確定編譯單元是否為熱點(diǎn)代碼,相比僅根據(jù)執(zhí)行次數(shù)來確定熱點(diǎn)代碼而言,使得判斷維度更加豐富,使得熱點(diǎn)代碼的確定更加準(zhǔn)確。
附圖說明
為了更清楚地說明本申請實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請的一些實(shí)施例,對于本領(lǐng)域技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1示出了現(xiàn)有技術(shù)提供的一種確定熱點(diǎn)代碼的方法示意圖;
圖2示出了本申請一實(shí)施例提供的一種代碼處理方法的方法流程圖;
圖3示出了本申請另一實(shí)施例提供的一種代碼處理方法的方法流程圖;
圖4示出了本申請一實(shí)施例提供的一種代碼處理裝置的模塊框圖;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于OPPO(重慶)智能科技有限公司,未經(jīng)OPPO(重慶)智能科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010048686.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





