System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 亚洲av永久无码精品秋霞电影影院,亚洲精品午夜无码电影网,国产精品无码无片在线观看
  • 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    軟件編譯優(yōu)化方法、設(shè)備以及存儲介質(zhì)技術(shù)

    技術(shù)編號:42581423 閱讀:35 留言:0更新日期:2024-08-29 00:43
    本申請公開了一種軟件編譯優(yōu)化方法、設(shè)備以及存儲介質(zhì),該軟件編譯優(yōu)化方法包括:對獲取到的軟件工程項(xiàng)目的各頭文件和各源文件進(jìn)行分析處理,得到各頭文件和各源文件之間的引用關(guān)系;基于引用關(guān)系和預(yù)設(shè)的文件篩選規(guī)則從各頭文件中確定第一頭文件以及從各源文件中確定第一源文件;基于獲取到的各源文件在編譯過程中的編譯結(jié)果確定各源文件中的第二源文件以及確定各源文件中的第三源文件;基于第一頭文件、第一源文件、第二源文件以及第三源文件之間的匹配結(jié)果確定待優(yōu)化頭文件和/或待優(yōu)化源文件;對待優(yōu)化頭文件和/或待優(yōu)化源文件進(jìn)行優(yōu)化處理,得到優(yōu)化后的軟件工程項(xiàng)目。上述方案,能夠提高軟件工程項(xiàng)目的編譯效率。

    【技術(shù)實(shí)現(xiàn)步驟摘要】

    本申請涉及計(jì)算機(jī),特別是涉及一種軟件編譯優(yōu)化方法、設(shè)備以及存儲介質(zhì)


    技術(shù)介紹

    1、在計(jì)算機(jī)領(lǐng)域中,軟件工程項(xiàng)目在經(jīng)過逐步迭代更新后,項(xiàng)目的工程復(fù)雜度會逐漸變高。除了項(xiàng)目本身的工程代碼外,還會持續(xù)增加許多依賴子工程,進(jìn)而導(dǎo)致項(xiàng)目的編譯生成周期會被逐漸拉長。

    2、目前盡管采用子工程并行編譯等方式能提高項(xiàng)目的編譯生成速度,但是在項(xiàng)目持續(xù)集成過程中,且需要頻繁生成項(xiàng)目的情況下,仍明顯影響著工程項(xiàng)目的開發(fā)周期,降低了工程項(xiàng)目的編譯生成效率。

    3、因此,如何提高開發(fā)效率成為當(dāng)前亟待解決的問題之一。


    技術(shù)實(shí)現(xiàn)思路

    1、本申請至少提供一種軟件編譯優(yōu)化方法、裝置、設(shè)備以及計(jì)算機(jī)可讀存儲介質(zhì)。

    2、本申請第一方面提供了一種軟件編譯優(yōu)化方法,包括:對獲取到的軟件工程項(xiàng)目的各頭文件和各源文件進(jìn)行分析處理,得到各頭文件和各源文件之間的引用關(guān)系;基于所述引用關(guān)系和預(yù)設(shè)的文件篩選規(guī)則從各頭文件中確定第一頭文件以及從各源文件中確定第一源文件;基于獲取到的各源文件在編譯過程中的編譯結(jié)果確定各源文件中的第二源文件以及確定各源文件中的第三源文件;基于所述第一頭文件、所述第一源文件、所述第二源文件以及所述第三源文件之間的匹配結(jié)果確定待優(yōu)化頭文件和/或待優(yōu)化源文件;對所述待優(yōu)化頭文件和/或所述待優(yōu)化源文件進(jìn)行優(yōu)化處理,得到優(yōu)化后的軟件工程項(xiàng)目。

    3、在一實(shí)施例中,所述基于獲取到的各源文件在編譯過程中的編譯結(jié)果確定各源文件中的第二源文件以及確定各源文件中的第三源文件,包括:獲取各源文件在編譯過程中生成的目標(biāo)文件的文件大小和各源文件在編譯過程中的編譯耗時(shí);基于所述目標(biāo)文件的文件大小對各源文件進(jìn)行篩選處理,得到所述第二源文件;以及基于所述編譯耗時(shí)對各源文件進(jìn)行篩選處理,得到所述第三源文件。

    4、在一實(shí)施例中,所述基于所述目標(biāo)文件的文件大小對各源文件進(jìn)行篩選處理,得到所述第二源文件;以及基于所述編譯耗時(shí)對各源文件進(jìn)行篩選處理,得到所述第三源文件,包括:基于各源文件對應(yīng)生成的目標(biāo)文件的文件大小以及預(yù)設(shè)的大小篩選閾值,對各源文件進(jìn)行堆排序處理,得到所述第二源文件;基于各源文件對應(yīng)的編譯耗時(shí)以及預(yù)設(shè)的時(shí)間篩選閾值,對各源文件進(jìn)行堆排序處理,得到所述第三源文件。

    5、在一實(shí)施例中,所述基于所述第一頭文件、所述第一源文件、所述第二源文件以及所述第三源文件之間的匹配結(jié)果確定待優(yōu)化頭文件和/或待優(yōu)化源文件,包括:對所述第三源文件和所述第一源文件進(jìn)行匹配處理,將和所述第一源文件匹配成功的第三源文件作為第一匹配源文件,以及將和所述第一源文件匹配失敗的第三源文件作為所述待優(yōu)化源文件;對所述第三源文件和所述第二源文件進(jìn)行匹配處理,將和所述第二源文件匹配成功的第三源文件作為的第二匹配源文件;對所述第一匹配源文件和所述第二匹配源文件進(jìn)行匹配處理,將匹配成功的第二匹配源文件所引用的第一頭文件確定為所述待優(yōu)化頭文件,以及匹配失敗的第二匹配源文件作為所述待優(yōu)化源文件。

    6、在一實(shí)施例中,所述對所述第三源文件和所述第一源文件進(jìn)行匹配處理,包括:將所述第三源文件的文件名稱和所述第一源文件的文件名稱進(jìn)行同名匹配處理,得到和所述第一源文件匹配成功的第三源文件,以及和所述第一源文件匹配失敗的第三源文件;所述對所述第三源文件和所述第二源文件進(jìn)行匹配處理,包括:將所述第三源文件的文件名稱和所述第二源文件的文件名稱進(jìn)行同名匹配處理,得到和所述第二源文件匹配成功的第三源文件;所述對所述第一匹配源文件和所述第二匹配源文件進(jìn)行匹配處理,包括:將所述第一匹配源文件的文件名稱和所述第二匹配源文件的文件名稱進(jìn)行同名匹配處理,得到匹配成功的第二匹配源文件和匹配失敗的第二匹配源文件。

    7、在一實(shí)施例中,所述對所述待優(yōu)化頭文件和/或所述待優(yōu)化源文件進(jìn)行優(yōu)化處理,得到優(yōu)化后的軟件工程項(xiàng)目,包括:基于所述引用關(guān)系查找每個(gè)待優(yōu)化頭文件對應(yīng)的待處理源文件;獲取每個(gè)待處理源文件所引用的各頭文件的功能類型;對每個(gè)待處理源文件中所述功能類型重復(fù)的頭文件進(jìn)行功能去重處理;和/或,提取各待優(yōu)化源文件中的預(yù)設(shè)代碼模板,并對各預(yù)設(shè)代碼模板進(jìn)行外部聲明處理,得到優(yōu)化后的源文件;獲取各優(yōu)化后的源文件的依賴關(guān)系;對存在重復(fù)依賴關(guān)系的源文件進(jìn)行依賴去重處理;得到所述優(yōu)化后的軟件工程項(xiàng)目。

    8、在一實(shí)施例中,所述基于所述引用關(guān)系和預(yù)設(shè)的文件篩選規(guī)則從各頭文件中確定第一頭文件以及從各源文件中確定第一源文件,包括:基于所述引用關(guān)系確定每個(gè)源文件所引用的頭文件數(shù)量,以及每個(gè)頭文件的被引用次數(shù);基于每個(gè)源文件所引用的頭文件數(shù)量對各源文件進(jìn)行篩選處理,得到所述第一源文件;基于每個(gè)頭文件的被引用次數(shù)對各頭文件進(jìn)行篩選處理,得到所述第一頭文件。

    9、在一實(shí)施例中,在所述對獲取到的軟件工程項(xiàng)目的各頭文件和各源文件進(jìn)行分析處理,得到各頭文件和各源文件之間的引用關(guān)系之前,包括:響應(yīng)于所述軟件工程項(xiàng)目的編譯事件觸發(fā),對所述軟件工程項(xiàng)目包含的解決方案進(jìn)行解析,得到所述解決方案的編譯信息;若基于所述編譯信息判斷所述解決方案未更新,則根據(jù)預(yù)設(shè)的復(fù)用列表獲取所述解決方案對應(yīng)的方案產(chǎn)物;若基于所述編譯信息判斷所述解決方案已更新,則對所述解決方案進(jìn)行編譯處理。

    10、本申請第二方面提供了一種軟件編譯優(yōu)化裝置,包括:分析模塊,用于對獲取到的軟件工程項(xiàng)目的各頭文件和各源文件進(jìn)行分析處理,得到各頭文件和各源文件之間的引用關(guān)系;第一確定模塊,用于基于所述引用關(guān)系和預(yù)設(shè)的文件篩選規(guī)則從各頭文件中確定第一頭文件以及從各源文件中確定第一源文件;第二確定模塊,用于基于獲取到的各源文件在編譯過程中的編譯結(jié)果確定各源文件中的第二源文件以及確定各源文件中的第三源文件;匹配模塊,用于基于所述第一頭文件、所述第一源文件、所述第二源文件以及所述第三源文件之間的匹配結(jié)果確定待優(yōu)化頭文件和/或待優(yōu)化源文件;優(yōu)化模塊,用于對所述待優(yōu)化頭文件和/或所述待優(yōu)化源文件進(jìn)行優(yōu)化處理,得到優(yōu)化后的軟件工程項(xiàng)目。

    11、本申請第三方面提供了一種電子設(shè)備,包括存儲器和處理器,處理器用于執(zhí)行存儲器中存儲的程序指令,以實(shí)現(xiàn)上述軟件編譯優(yōu)化方法。

    12、本申請第四方面提供了一種計(jì)算機(jī)可讀存儲介質(zhì),其上存儲有程序指令,程序指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述軟件編譯優(yōu)化方法。

    13、上述方案,通過對獲取到的軟件工程項(xiàng)目的各頭文件和各源文件進(jìn)行分析處理,得到各頭文件和各源文件之間的引用關(guān)系;基于所述引用關(guān)系和預(yù)設(shè)的文件篩選規(guī)則從各頭文件中確定第一頭文件以及從各源文件中確定第一源文件,由此可以確定在編譯過程中可能影響編譯速度的頭文件和源文件;基于獲取到的各源文件在編譯過程中的編譯結(jié)果確定各源文件中的第二源文件以及確定各源文件中的第三源文件,則可以進(jìn)一步確定影響編譯速度的頭文件和源文件;因此,通過第一頭文件、第一源文件、第二源文件以及第三源文件之間的匹配結(jié)果能夠?qū)Υ齼?yōu)化頭文件和/或待優(yōu)化源文件進(jìn)行定位;對待優(yōu)化頭文件和/或待優(yōu)化源文件進(jìn)行優(yōu)化處理,能夠優(yōu)化編譯過程,得到優(yōu)化后的軟件工程項(xiàng)目,本文檔來自技高網(wǎng)...

    【技術(shù)保護(hù)點(diǎn)】

    1.一種軟件編譯優(yōu)化方法,其特征在于,所述方法包括:

    2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于獲取到的各源文件在編譯過程中的編譯結(jié)果確定各源文件中的第二源文件以及確定各源文件中的第三源文件,包括:

    3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述基于所述目標(biāo)文件的文件大小對各源文件進(jìn)行篩選處理,得到所述第二源文件;以及基于所述編譯耗時(shí)對各源文件進(jìn)行篩選處理,得到所述第三源文件,包括:

    4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于所述第一頭文件、所述第一源文件、所述第二源文件以及所述第三源文件之間的匹配結(jié)果確定待優(yōu)化頭文件和/或待優(yōu)化源文件,包括:

    5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述對所述第三源文件和所述第一源文件進(jìn)行匹配處理,包括:

    6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述對所述待優(yōu)化頭文件和/或所述待優(yōu)化源文件進(jìn)行優(yōu)化處理,得到優(yōu)化后的軟件工程項(xiàng)目,包括:

    7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于所述引用關(guān)系和預(yù)設(shè)的文件篩選規(guī)則從各頭文件中確定第一頭文件以及從各源文件中確定第一源文件,包括:

    8.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述對獲取到的軟件工程項(xiàng)目的各頭文件和各源文件進(jìn)行分析處理,得到各頭文件和各源文件之間的引用關(guān)系之前,包括:

    9.一種電子設(shè)備,其特征在于,包括存儲器和處理器,所述處理器用于執(zhí)行所述存儲器中存儲的程序指令,以實(shí)現(xiàn)權(quán)利要求1至8任一項(xiàng)所述的方法。

    10.一種計(jì)算機(jī)可讀存儲介質(zhì),其上存儲有程序指令,其特征在于,所述程序指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)權(quán)利要求1至8任一項(xiàng)所述的方法。

    ...

    【技術(shù)特征摘要】

    1.一種軟件編譯優(yōu)化方法,其特征在于,所述方法包括:

    2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于獲取到的各源文件在編譯過程中的編譯結(jié)果確定各源文件中的第二源文件以及確定各源文件中的第三源文件,包括:

    3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述基于所述目標(biāo)文件的文件大小對各源文件進(jìn)行篩選處理,得到所述第二源文件;以及基于所述編譯耗時(shí)對各源文件進(jìn)行篩選處理,得到所述第三源文件,包括:

    4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于所述第一頭文件、所述第一源文件、所述第二源文件以及所述第三源文件之間的匹配結(jié)果確定待優(yōu)化頭文件和/或待優(yōu)化源文件,包括:

    5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述對所述第三源文件和所述第一源文件進(jìn)行匹配處理,包括:

    6.根據(jù)...

    【專利技術(shù)屬性】
    技術(shù)研發(fā)人員:林封笑蘇浩黃鵬張小鋒
    申請(專利權(quán))人:浙江大華技術(shù)股份有限公司
    類型:發(fā)明
    國別省市:

    網(wǎng)友詢問留言 已有0條評論
    • 還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 国产a v无码专区亚洲av| 国产精品亚洲а∨无码播放| 亚洲AV成人片无码网站| mm1313亚洲国产精品无码试看| 国产成人无码精品久久久性色| 日韩亚洲AV无码一区二区不卡| 亚洲AV无码乱码麻豆精品国产| 久久久久无码专区亚洲av| 亚洲AV永久无码天堂影院| 中文字幕人妻无码专区| 成人年无码AV片在线观看| 久久精品国产亚洲AV无码偷窥| 无码国模国产在线无码精品国产自在久国产 | 韩国精品一区二区三区无码视频 | 无码AV一区二区三区无码 | 日本爆乳j罩杯无码视频| 亚洲中文字幕久久无码| 无码专区—VA亚洲V天堂| 亚洲无码高清在线观看| 国产午夜无码片在线观看| 亚洲精品无码久久久久APP| 人妻丰满AV无码久久不卡| 亚洲AV永久无码精品水牛影视| 亚洲精品无码av天堂| 少妇无码太爽了不卡视频在线看| 精品无码AV一区二区三区不卡| 亚洲人成人无码网www电影首页 | 人妻无码久久一区二区三区免费| 免费无码又爽又刺激高潮软件| 国产精品无码MV在线观看| 人妻在线无码一区二区三区| 亚洲欧洲无码AV不卡在线| 中文无码亚洲精品字幕| 亚洲视频无码高清在线| 亚洲成av人片天堂网无码】| 日本无码一区二区三区白峰美| 熟妇人妻无码中文字幕老熟妇| 精品无码国产一区二区三区麻豆 | 久久久久亚洲精品无码系列 | 亚洲av永久无码精品三区在线4 | 日韩中文无码有码免费视频 |