国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種游戲數(shù)據(jù)的分析、處理方法和裝置與流程

      文檔序號(hào):11154629閱讀:613來(lái)源:國(guó)知局
      一種游戲數(shù)據(jù)的分析、處理方法和裝置與制造工藝

      本申請(qǐng)涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,尤其涉及一種游戲數(shù)據(jù)的分析、處理方法和裝置。



      背景技術(shù):

      隨著計(jì)算機(jī)技術(shù)的發(fā)展,游戲應(yīng)用受到了廣大用戶的喜愛(ài)。一般而言,用戶需要在終端設(shè)備上安裝游戲客戶端,并通過(guò)所述游戲客戶端進(jìn)行登錄,以啟動(dòng)游戲程序。當(dāng)用戶點(diǎn)擊游戲客戶端啟動(dòng)登錄程序時(shí),客戶端會(huì)自動(dòng)加載相應(yīng)的游戲數(shù)據(jù)到內(nèi)存中,當(dāng)所有的游戲數(shù)據(jù)都加載完畢,用戶即成功登陸游戲。這個(gè)過(guò)程對(duì)用戶來(lái)說(shuō)是不可見(jiàn)的。當(dāng)加載的游戲數(shù)據(jù)不合理時(shí),給用戶的感知就是游戲啟動(dòng)時(shí)間特別長(zhǎng),給用戶帶來(lái)非常不好的體驗(yàn)。此外,加載的游戲數(shù)據(jù)不合理,也會(huì)造成系統(tǒng)資源的浪費(fèi),降低系統(tǒng)數(shù)據(jù)處理效率。然而,現(xiàn)有技術(shù)存在的常規(guī)測(cè)試方法,無(wú)法獲取在啟動(dòng)游戲客戶端時(shí)究竟加載了哪些游戲數(shù)據(jù),因此也無(wú)法解決游戲數(shù)據(jù)加載不合理導(dǎo)致的系統(tǒng)資源浪費(fèi)、處理效率低、用戶登陸時(shí)間長(zhǎng)、用戶體驗(yàn)不佳的問(wèn)題。



      技術(shù)實(shí)現(xiàn)要素:

      本申請(qǐng)的目的是,提供一種游戲數(shù)據(jù)的分析、處理方法和裝置,可以獲取啟動(dòng)游戲客戶端系統(tǒng)時(shí)加載的游戲數(shù)據(jù),并對(duì)其進(jìn)行分析處理,減少游戲客戶端系統(tǒng)啟動(dòng)時(shí)間,降低系統(tǒng)資源浪費(fèi),提高系統(tǒng)數(shù)據(jù)處理效率,提升用戶體驗(yàn)。

      一方面,本申請(qǐng)?zhí)峁┝艘环N游戲數(shù)據(jù)分析和處理方法,所述方法包括:

      當(dāng)啟動(dòng)游戲客戶端系統(tǒng)時(shí),通過(guò)預(yù)置的監(jiān)控程序獲取加載的游戲數(shù)據(jù)的信息;所述游戲數(shù)據(jù)的信息包括所述游戲數(shù)據(jù)的文件列表、所述游戲數(shù)據(jù)的加載時(shí)長(zhǎng)、所述游戲數(shù)據(jù)的處理時(shí)長(zhǎng)、所述游戲數(shù)據(jù)的處理順序中的一種或多種;

      分析所述游戲數(shù)據(jù)信息,獲得分析結(jié)果;

      根據(jù)所述分析結(jié)果對(duì)所述游戲客戶端系統(tǒng)進(jìn)行優(yōu)化處理。

      另一方面,本申請(qǐng)?zhí)峁┝艘环N游戲數(shù)據(jù)分析和處理裝置,所述裝置應(yīng)用于游戲客戶端系統(tǒng)中,所述裝置包括:

      數(shù)據(jù)獲取單元,用于當(dāng)啟動(dòng)所述游戲客戶端系統(tǒng)時(shí),通過(guò)預(yù)置的監(jiān)控程序獲取加載的游戲數(shù)據(jù)的信息;所述游戲數(shù)據(jù)的信息包括所述游戲數(shù)據(jù)的文件列表、所述游戲數(shù)據(jù)的加載時(shí)長(zhǎng)、所述游戲數(shù)據(jù)的處理時(shí)長(zhǎng)、所述游戲數(shù)據(jù)的處理順序中的一種或多種;

      數(shù)據(jù)分析單元,用于分析所述游戲數(shù)據(jù)信息,獲得分析結(jié)果;

      數(shù)據(jù)處理單元,用于根據(jù)所述分析結(jié)果對(duì)所述游戲客戶端系統(tǒng)進(jìn)行優(yōu)化處理。

      本申請(qǐng)實(shí)施例提供的游戲數(shù)據(jù)分析、處理方法和裝置,可以通過(guò)預(yù)置的監(jiān)控程序獲取啟動(dòng)游戲客戶端系統(tǒng)時(shí)加載的游戲數(shù)據(jù)的信息,并可以分析所述游戲數(shù)據(jù)信息,獲得分析結(jié)果,根據(jù)所述分析結(jié)果對(duì)所述游戲客戶端系統(tǒng)進(jìn)行優(yōu)化處理,從而減少了游戲客戶端系統(tǒng)啟動(dòng)時(shí)間,降低了系統(tǒng)資源浪費(fèi),提高了系統(tǒng)數(shù)據(jù)處理效率,提升了用戶體驗(yàn)。

      附圖說(shuō)明

      為了更清楚地說(shuō)明本申請(qǐng)實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本申請(qǐng)的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性 的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

      圖1為本申請(qǐng)實(shí)施例提供的一種游戲數(shù)據(jù)分析、處理方法流程圖;

      圖2為本申請(qǐng)實(shí)施例提供的預(yù)置監(jiān)控程序的方法流程圖;

      圖3為本申請(qǐng)實(shí)施例中獲取入口函數(shù)的一個(gè)示例;

      圖4為hook函數(shù)的一個(gè)示例性說(shuō)明;

      圖5為本申請(qǐng)實(shí)施例提供的一種游戲數(shù)據(jù)分析、處理裝置示意圖。

      具體實(shí)施方式

      根據(jù)本申請(qǐng)的實(shí)施方式,提出了一種游戲數(shù)據(jù)分析、處理方法和裝置。

      為使得本申請(qǐng)的發(fā)明目的、特征、優(yōu)點(diǎn)能夠更加的明顯和易懂,下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行描述,顯然,所描述的實(shí)施例僅僅是本申請(qǐng)一部分實(shí)施例,而非全部實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本申請(qǐng)保護(hù)的范圍。

      本申請(qǐng)實(shí)施例提供的游戲數(shù)據(jù)分析、處理方法和裝置,可以應(yīng)用于游戲客戶端系統(tǒng)。所述裝置可以放置于游戲客戶端系統(tǒng)內(nèi)部,也可以是一個(gè)獨(dú)立的實(shí)體與所述游戲客戶端系統(tǒng)數(shù)據(jù)連接,也可以作為與所述游戲客戶端系統(tǒng)網(wǎng)絡(luò)連接的服務(wù)器系統(tǒng)的內(nèi)部構(gòu)件而存在,也可以一部分安裝在游戲客戶端系統(tǒng)中,一部分安裝在服務(wù)器系統(tǒng)中,其具體實(shí)現(xiàn)方式可以是靈活多樣的,在此不進(jìn)行限制。所述游戲客戶端可以應(yīng)用于各類終端設(shè)備中,所述終端設(shè)備包括但不限于計(jì)算機(jī)、智能手機(jī)、平板電腦Pad、智能穿戴設(shè)備等終端設(shè)備,在此不進(jìn)行限制。

      圖1是本申請(qǐng)實(shí)施例提供的游戲數(shù)據(jù)分析和處理方法流程圖,如圖1所示,本申請(qǐng)實(shí)施例的游戲數(shù)據(jù)分析和處理方法包括:

      S101,當(dāng)啟動(dòng)游戲客戶端系統(tǒng)時(shí),通過(guò)預(yù)置的監(jiān)控程序獲取加載的游戲 數(shù)據(jù)的信息。

      S102,分析所述游戲數(shù)據(jù)信息,獲得分析結(jié)果。

      S103,根據(jù)所述分析結(jié)果對(duì)所述游戲客戶端系統(tǒng)進(jìn)行優(yōu)化處理。

      其中,所述監(jiān)控程序用于獲取啟動(dòng)所述游戲客戶端系統(tǒng)時(shí)加載的游戲數(shù)據(jù)的信息。所述游戲數(shù)據(jù)包括但不限于圖片、文字、數(shù)值、音頻、視頻、動(dòng)畫(huà)等數(shù)據(jù)。所述游戲數(shù)據(jù)的信息包括所述游戲數(shù)據(jù)的文件列表、所述游戲數(shù)據(jù)的加載時(shí)長(zhǎng)、所述游戲數(shù)據(jù)的處理時(shí)長(zhǎng)、所述游戲數(shù)據(jù)的處理順序中的一種或多種。

      在本申請(qǐng)具體實(shí)現(xiàn)時(shí),所述監(jiān)控程序具體可以通過(guò)hook(又可以稱為鉤子程序)技術(shù)實(shí)現(xiàn),通過(guò)hook技術(shù)改變系統(tǒng)調(diào)用,將其掛入游戲客戶端系統(tǒng),當(dāng)主程序在調(diào)用操作系統(tǒng)的底層API(英文全稱為Application Programming Interface,中文全稱為應(yīng)用程序編程接口)時(shí),則通過(guò)預(yù)置的監(jiān)控程序復(fù)制一份記錄出來(lái),從而得到系統(tǒng)在啟動(dòng)過(guò)程中加載的游戲數(shù)據(jù)的詳細(xì)情況。在通過(guò)預(yù)置的監(jiān)控程序獲取加載的游戲數(shù)據(jù)的信息后,即分析所述游戲數(shù)據(jù)信息,并獲得分析結(jié)果,進(jìn)而根據(jù)所述分析結(jié)果對(duì)所述游戲客戶端系統(tǒng)進(jìn)行優(yōu)化處理。根據(jù)獲取的游戲數(shù)據(jù)的信息的不同,對(duì)所述游戲數(shù)據(jù)的分析和處理方式可以是多樣的。

      下面將對(duì)本申請(qǐng)的具體實(shí)現(xiàn)進(jìn)行詳細(xì)介紹以下僅是本申請(qǐng)具體實(shí)現(xiàn)時(shí)的一些實(shí)施方式的示例,并不視為對(duì)本申請(qǐng)的限制。

      在一些實(shí)施方式中,本申請(qǐng)還進(jìn)一步包括預(yù)置監(jiān)控程序的步驟,所述監(jiān)控程序用于獲取啟動(dòng)所述游戲客戶端系統(tǒng)時(shí)加載的游戲數(shù)據(jù)信息。

      其中,如圖2所示,預(yù)置監(jiān)控程序可以包括下列步驟:

      S201,獲取游戲客戶端系統(tǒng)主程序的入口函數(shù)。

      在本申請(qǐng)具體實(shí)現(xiàn)時(shí),可以通過(guò)hook技術(shù)來(lái)實(shí)現(xiàn)對(duì)加載的游戲數(shù)據(jù)的監(jiān)控、獲取。其中,hook是Windows消息處理機(jī)制的一個(gè)平臺(tái),應(yīng)用程序可以 在上面設(shè)置子程序以監(jiān)視指定窗口的某種消息,而且所監(jiān)視的窗口可以是其他進(jìn)程所創(chuàng)建的。當(dāng)消息到達(dá)后,在目標(biāo)窗口處理函數(shù)之前處理它。鉤子機(jī)制允許應(yīng)用程序截獲處理windows消息或特定事件。Hook實(shí)際上是一個(gè)處理消息的程序段,通過(guò)系統(tǒng)調(diào)用,把它掛入系統(tǒng)。每當(dāng)特定的消息發(fā)出,在沒(méi)有到達(dá)目的窗口前,鉤子程序就先捕獲該消息,亦即鉤子函數(shù)先得到控制權(quán)。這時(shí)鉤子函數(shù)即可以加工處理(改變)該消息,也可以不作處理而繼續(xù)傳遞該消息,還可以強(qiáng)制結(jié)束消息的傳遞。在本申請(qǐng)中,正是應(yīng)用了hook技術(shù),改變了系統(tǒng)調(diào)用,將其掛入游戲客戶端系統(tǒng),當(dāng)主程序在調(diào)用操作系統(tǒng)的底層API時(shí),則通過(guò)預(yù)置的監(jiān)控程序復(fù)制一份記錄出來(lái),從而得到系統(tǒng)在啟動(dòng)過(guò)程中加載的游戲數(shù)據(jù)的詳細(xì)情況。

      具體實(shí)現(xiàn)時(shí),首先需要獲取游戲客戶端系統(tǒng)主程序的入口函數(shù)(例如WinMain函數(shù))。具體地,可以通過(guò)IDA(英文全稱為Interactive Disassembler,中文全稱為交互式反匯編器)打開(kāi)文件,獲取WinMain函數(shù)的地址。如圖3所示,為本申請(qǐng)實(shí)施例中獲取入口函數(shù)的一個(gè)示例,如圖3所示,入口地址為00586350。

      S202,修改游戲客戶端系統(tǒng)主程序文件,在所述游戲客戶端主程序文件中植入包含所述監(jiān)控程序的動(dòng)態(tài)鏈接庫(kù)DLL文件。

      在獲取主程序的入口函數(shù)后,即可以修改游戲客戶端系統(tǒng)主程序文件,并在所述游戲客戶端主程序文件中植入包含所述監(jiān)控程序的DLL文件,在啟動(dòng)游戲客戶端程序時(shí),加載所述DLL文件,即可以運(yùn)行監(jiān)控程序以獲得在啟動(dòng)游戲客戶端程序過(guò)程中加載的游戲數(shù)據(jù)的信息。

      具體實(shí)現(xiàn)時(shí),修改主程文件的操作可以通過(guò)二進(jìn)制工具實(shí)現(xiàn),也可以直接通過(guò)Ollydbg(反匯編)工具來(lái)修改,修改的方法一般在文件尾部的使用一個(gè)空白JMP(一種跳轉(zhuǎn)指令)來(lái)實(shí)現(xiàn)。其作用是可以跳轉(zhuǎn)到主程序的最末尾,以改變程序的執(zhí)行順序,防止主程序的保護(hù)程序運(yùn)行。然后,將包括編寫(xiě)好 的hook函數(shù)的DLL文件植入主程序文件中。其主要功能是在游戲客戶端系統(tǒng)創(chuàng)建文件或讀取文件時(shí)獲取所述文件的名稱、保存路徑、時(shí)間參數(shù)信息。其中,時(shí)間參數(shù)可以包括文件的創(chuàng)建時(shí)間、讀取時(shí)間、運(yùn)行處理時(shí)間、修改時(shí)間等,具體可以根據(jù)需要設(shè)置。如圖4所示,為hook函數(shù)的一個(gè)示例性說(shuō)明。

      監(jiān)控程序設(shè)置成功后,即可以啟動(dòng)游戲客戶端系統(tǒng),加載預(yù)置的監(jiān)控程序以獲取加載的游戲數(shù)據(jù)的信息。在通過(guò)預(yù)置的監(jiān)控程序獲取加載的游戲數(shù)據(jù)的信息時(shí),即可以根據(jù)獲取的所述文件的名稱、保存路徑、時(shí)間參數(shù)信息獲取加載的游戲數(shù)據(jù)的文件列表、所述游戲數(shù)據(jù)的加載時(shí)長(zhǎng)、所述游戲數(shù)據(jù)的處理時(shí)長(zhǎng)、所述游戲數(shù)據(jù)的處理順序中的一種或多種。

      在通過(guò)預(yù)置的監(jiān)控程序獲取加載的游戲數(shù)據(jù)的信息后,即可以對(duì)所述游戲數(shù)據(jù)的信息進(jìn)行分析,并獲得分析結(jié)果,進(jìn)而根據(jù)所述分析結(jié)果對(duì)所述游戲客戶端系統(tǒng)進(jìn)行優(yōu)化處理。根據(jù)獲取的游戲數(shù)據(jù)的信息的不同,對(duì)所述游戲數(shù)據(jù)的分析和處理方式可以是多樣的。

      在一種可能的實(shí)現(xiàn)方式中,當(dāng)所述游戲數(shù)據(jù)的信息包括加載的游戲數(shù)據(jù)的文件列表時(shí),所述分析所述游戲數(shù)據(jù)信息,獲得分析結(jié)果包括:比較所述文件列表中各文件的名稱,判斷是否存在相同的名稱;當(dāng)判斷存在相同的名稱時(shí),確定在啟動(dòng)游戲客戶端系統(tǒng)時(shí)存在游戲數(shù)據(jù)重復(fù)加載。舉例說(shuō)明,在啟動(dòng)游戲客戶端系統(tǒng)時(shí),在第一階段加載了A文件,在第二階段又加載了A文件,這時(shí)第二階段加載A文件就是多余的,即存在重復(fù)加載文件的問(wèn)題。在本申請(qǐng)中,由于通過(guò)監(jiān)控程序獲取了游戲數(shù)據(jù)加載階段所加載的全部文件的列表,因此可以通過(guò)比較文件列表中各文件的文件名,判斷是否存在相同的文件名。如果存在相同的文件名時(shí),則確定存在重復(fù)加載,并進(jìn)行相應(yīng)的優(yōu)化處理。具體地,當(dāng)確定啟動(dòng)游戲客戶端系統(tǒng)時(shí)存在游戲數(shù)據(jù)重復(fù)加載時(shí),所述根據(jù)所述分析結(jié)果對(duì)所述客戶端系統(tǒng)進(jìn)行優(yōu)化處理包括:將所述游戲客戶端系統(tǒng)配置成在第一次加載所述游戲數(shù)據(jù)時(shí),從本地磁盤(pán)讀取所述游戲數(shù) 據(jù),并將其保存在內(nèi)存中,在第二次加載所述游戲數(shù)據(jù)時(shí),直接從內(nèi)存中讀取所述游戲數(shù)據(jù)。這樣,則無(wú)需重復(fù)加載相同的文件,節(jié)省了系統(tǒng)資源,并提高了數(shù)據(jù)處理速度。

      在另外一種可能的實(shí)現(xiàn)方式中,當(dāng)所述游戲數(shù)據(jù)的信息包括游戲數(shù)據(jù)的加載時(shí)長(zhǎng)時(shí),所述分析所述游戲數(shù)據(jù)信息,獲得分析結(jié)果包括:判斷獲取的所述游戲數(shù)據(jù)的加載時(shí)長(zhǎng)是否大于第一時(shí)間閾值;如果是,確定所述游戲數(shù)據(jù)的加載時(shí)間過(guò)長(zhǎng)。具體實(shí)現(xiàn)時(shí),根據(jù)經(jīng)驗(yàn)設(shè)置第一時(shí)間閾值,所述第一時(shí)間閾值為加載游戲數(shù)據(jù)的合理時(shí)長(zhǎng),如果加載時(shí)間超過(guò)第一時(shí)間閾值,則表明加載時(shí)間過(guò)長(zhǎng)。這時(shí),則可以對(duì)加載的游戲數(shù)據(jù)進(jìn)行優(yōu)化處理。

      一般地,造成游戲數(shù)據(jù)加載時(shí)間過(guò)長(zhǎng)的因素可以包括:數(shù)據(jù)存儲(chǔ)格式不合理、數(shù)據(jù)加載來(lái)源(讀取方式)不合理、數(shù)據(jù)未經(jīng)過(guò)預(yù)處理等。在確定所述游戲數(shù)據(jù)的加載時(shí)間過(guò)長(zhǎng)時(shí),所述根據(jù)所述分析結(jié)果對(duì)所述游戲客戶端系統(tǒng)進(jìn)行優(yōu)化處理包括以下所列中的一種或任意結(jié)合:

      (1)改變所述游戲數(shù)據(jù)的存儲(chǔ)格式,將所述游戲數(shù)據(jù)存儲(chǔ)成容量小的格式。由于圖片的存儲(chǔ)格式不同,其容量不同??梢酝ㄟ^(guò)分析具體的應(yīng)用場(chǎng)景,將數(shù)據(jù)存儲(chǔ)成不同的格式。舉例說(shuō)明,同樣對(duì)于圖片數(shù)據(jù),有些應(yīng)用場(chǎng)景對(duì)圖片質(zhì)量要求較高,則需要將圖片存儲(chǔ)成高清的格式;有些應(yīng)用場(chǎng)景對(duì)圖片質(zhì)量要求不高,則可以將圖片存儲(chǔ)成普通的、容量較小的格式。根據(jù)分析結(jié)果,可以改變部分游戲數(shù)據(jù)的存儲(chǔ)格式,將所述游戲數(shù)據(jù)存儲(chǔ)成容量小的格式,以減少加載時(shí)間,提高數(shù)據(jù)的處理效率。

      (2)改變所述游戲數(shù)據(jù)的讀取方式,將所述游戲數(shù)據(jù)配置成從本地文件服務(wù)器或者本地游戲安裝包中進(jìn)行數(shù)據(jù)讀取。數(shù)據(jù)的加載來(lái)源或者讀取方式不合理,也是造成數(shù)據(jù)加載時(shí)間過(guò)長(zhǎng)的重要因素。這時(shí),可以將部分?jǐn)?shù)據(jù)配置成從網(wǎng)絡(luò)讀取的方式,將部分游戲數(shù)據(jù)配置成從本地文件服務(wù)器或者本地游戲安裝包中進(jìn)行數(shù)據(jù)讀取。這樣,可以有效減少數(shù)據(jù)加載時(shí)間,提高系 統(tǒng)數(shù)據(jù)處理效率。

      (3)壓縮所述游戲數(shù)據(jù)。部分?jǐn)?shù)據(jù)未經(jīng)過(guò)壓縮進(jìn)行加載,也是造成數(shù)據(jù)加載時(shí)間過(guò)長(zhǎng)的原因。因此,可以預(yù)先對(duì)加載數(shù)據(jù)進(jìn)行壓縮、排序等處理。

      在有一種可能的實(shí)現(xiàn)方式中,當(dāng)所述游戲數(shù)據(jù)的信息包括游戲數(shù)據(jù)的處理時(shí)長(zhǎng)時(shí),所述分析所述游戲數(shù)據(jù)信息,獲得分析結(jié)果包括:判斷獲取的所述游戲數(shù)據(jù)的處理時(shí)長(zhǎng)是否大于第二時(shí)間閾值;如果是,確定所述游戲數(shù)據(jù)的處理時(shí)間過(guò)長(zhǎng)。根據(jù)經(jīng)驗(yàn)設(shè)置第二時(shí)間閾值,所述第二時(shí)間閾值為處理游戲數(shù)據(jù)的合理時(shí)長(zhǎng),如果處理時(shí)間超過(guò)第二時(shí)間閾值,則表明處理時(shí)間過(guò)長(zhǎng)。這時(shí),則可以對(duì)處理的游戲數(shù)據(jù)進(jìn)行優(yōu)化處理。

      一般地,造成游戲數(shù)據(jù)處理時(shí)間過(guò)長(zhǎng)的因素可以包括:數(shù)據(jù)未經(jīng)過(guò)處理,處理數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)、處理邏輯、算法不合理,數(shù)據(jù)的輸入輸出、讀取方式不合理等。因此,根據(jù)上述因素,在確定所述游戲數(shù)據(jù)的處理時(shí)間過(guò)長(zhǎng)時(shí),所述根據(jù)所述分析結(jié)果對(duì)所述游戲客戶端系統(tǒng)進(jìn)行優(yōu)化處理包括以下所列中的一種或任意結(jié)合:

      (1)對(duì)所述游戲數(shù)據(jù)進(jìn)行預(yù)處理,所述預(yù)處理包括對(duì)所述游戲數(shù)據(jù)進(jìn)行排序、壓縮或者格式轉(zhuǎn)換。舉例說(shuō)明,如果數(shù)據(jù)未經(jīng)過(guò)排序,從文件中查找數(shù)據(jù)可能會(huì)消耗非常多的時(shí)間,對(duì)數(shù)據(jù)進(jìn)行排序后,查找數(shù)據(jù)將變得更為容易。因此,在對(duì)游戲數(shù)據(jù)進(jìn)行預(yù)處理時(shí),可以對(duì)數(shù)據(jù)進(jìn)行排序處理。此外,如果游戲數(shù)據(jù)被保存成多種不同的格式,將會(huì)導(dǎo)致文件的讀取、處理困難,需要將其轉(zhuǎn)換成標(biāo)準(zhǔn)格式再進(jìn)行處理,由此造成處理時(shí)間過(guò)長(zhǎng)。在本申請(qǐng)中,可以預(yù)先將非標(biāo)準(zhǔn)格式的文件轉(zhuǎn)換成標(biāo)準(zhǔn)格式的文件,例如將文件保存成標(biāo)準(zhǔn)的XML文件,這樣,在啟動(dòng)游戲客戶端系統(tǒng)時(shí),處理數(shù)據(jù)將變得更為容易,有效減少了數(shù)據(jù)的處理時(shí)間。同樣地,對(duì)數(shù)據(jù)進(jìn)行壓縮,也可以有效減少數(shù)據(jù)的處理時(shí)間。當(dāng)然,這僅是對(duì)數(shù)據(jù)進(jìn)行預(yù)處理的示例性說(shuō)明,其他對(duì)數(shù)據(jù)進(jìn)行預(yù)處理的方式也包含在本申請(qǐng)中,在此不進(jìn)行限制。

      (2)對(duì)所述游戲客戶端系統(tǒng)進(jìn)行性能優(yōu)化處理,所述性能優(yōu)化處理包括優(yōu)化所述游戲客戶端系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)、處理邏輯或者算法。具體實(shí)現(xiàn)時(shí),數(shù)據(jù)結(jié)構(gòu)不合理也是造成數(shù)據(jù)處理時(shí)間長(zhǎng)的一個(gè)因素。因此,可以通過(guò)優(yōu)化數(shù)據(jù)結(jié)果減少數(shù)據(jù)處理時(shí)間。此外,對(duì)系統(tǒng)的算法、處理邏輯進(jìn)行優(yōu)化,也可以減少數(shù)據(jù)的處理時(shí)間。

      (3)對(duì)所述游戲客戶端系統(tǒng)的數(shù)據(jù)處理順序進(jìn)行調(diào)整。通過(guò)調(diào)整數(shù)據(jù)的處理順序,將會(huì)有效提升系統(tǒng)的數(shù)據(jù)處理效率。

      (4)對(duì)所述游戲客戶端系統(tǒng)的數(shù)據(jù)輸入輸出、存儲(chǔ)方式、讀取方式進(jìn)行優(yōu)化處理。舉例說(shuō)明,數(shù)據(jù)的讀取方式是從內(nèi)存中讀取還是從網(wǎng)絡(luò)中讀取都將會(huì)影響系統(tǒng)的數(shù)據(jù)處理效率。這時(shí),就可以通過(guò)配置數(shù)據(jù)的讀取方式,將部分?jǐn)?shù)據(jù)配置成從內(nèi)存中讀取,部分?jǐn)?shù)據(jù)配置成從網(wǎng)絡(luò)中讀取。此外,還可以將常用的部分?jǐn)?shù)據(jù)配置成常駐內(nèi)存,其他數(shù)據(jù)就可以在處理完成后即從內(nèi)存中刪除。具體的優(yōu)化方法可以是靈活多樣的,只要能夠提高數(shù)據(jù)的處理效率即可。

      在再一種可能的實(shí)現(xiàn)方式中,當(dāng)所述游戲數(shù)據(jù)的信息包括加載的游戲數(shù)據(jù)的文件列表時(shí),所述分析所述游戲數(shù)據(jù)信息,獲得分析結(jié)果包括:當(dāng)所述游戲數(shù)據(jù)的信息包括加載的游戲數(shù)據(jù)的文件列表時(shí),根據(jù)所述文件列表各文件的屬性確定各文件是否為啟動(dòng)所述游戲客戶端系統(tǒng)的必要文件;如果存在至少一個(gè)文件不是啟動(dòng)所述游戲客戶端系統(tǒng)的必要文件,則確定所述游戲數(shù)據(jù)加載不合理。具體實(shí)現(xiàn)時(shí),通過(guò)分析加載的文件列表,分析出哪些文件是否必須啟動(dòng)階段的時(shí)候加載,哪是文件是否可以啟動(dòng)后加載,例如,A文件是啟動(dòng)的時(shí)候必須要加用的,那就在啟動(dòng)階段加載,B文件是啟動(dòng)后才會(huì)用到,這樣就可以讓B文件在啟動(dòng)的時(shí)候不加載。這樣,就可以區(qū)分出哪些文件是啟動(dòng)所述游戲客戶端系統(tǒng)的必要文件,哪些不是啟動(dòng)所述游戲客戶端系統(tǒng)的必要文件。如果存在至少個(gè)文件不是啟動(dòng)所述游戲客戶端系統(tǒng)的必要文件, 則確定所述游戲數(shù)據(jù)加載不合理。

      當(dāng)確定所述游戲數(shù)據(jù)加載不合理時(shí),所述根據(jù)所述分析結(jié)果對(duì)所述游戲客戶端系統(tǒng)進(jìn)行優(yōu)化處理包括:創(chuàng)建必要文件列表,所述必要文件列表包括啟動(dòng)所述游戲客戶端系統(tǒng)的必要文件;將所述游戲客戶端配置成在啟動(dòng)所述游戲客戶端系統(tǒng)時(shí),僅加載所述必要文件列表中的文件所對(duì)應(yīng)的游戲數(shù)據(jù)。這樣,就可以在啟動(dòng)階段僅加載必要的文件,有效減少了加載的數(shù)據(jù)量,提高系統(tǒng)數(shù)據(jù)處理速度和效率。

      如圖5所示,為本申請(qǐng)?zhí)峁┑囊环N游戲數(shù)據(jù)分析和處理裝置示意圖,所述裝置500應(yīng)用于游戲客戶端系統(tǒng)中,所述裝置包括:

      數(shù)據(jù)獲取單元501,用于當(dāng)啟動(dòng)所述游戲客戶端系統(tǒng)時(shí),通過(guò)預(yù)置的監(jiān)控程序獲取加載的游戲數(shù)據(jù)的信息;所述游戲數(shù)據(jù)的信息包括所述游戲數(shù)據(jù)的文件列表、所述游戲數(shù)據(jù)的加載時(shí)長(zhǎng)、所述游戲數(shù)據(jù)的處理時(shí)長(zhǎng)、所述游戲數(shù)據(jù)的處理順序中的一種或多種;

      數(shù)據(jù)分析單元502,用于分析所述游戲數(shù)據(jù)信息,獲得分析結(jié)果;

      數(shù)據(jù)處理單元503,用于根據(jù)所述分析結(jié)果對(duì)所述游戲客戶端系統(tǒng)進(jìn)行優(yōu)化處理。

      其中,所述裝置還包括:

      預(yù)置單元,用于預(yù)置監(jiān)控程序,所述監(jiān)控程序用于獲取啟動(dòng)所述游戲客戶端系統(tǒng)時(shí)加載的游戲數(shù)據(jù)信息。

      其中,所述預(yù)置單元具體包括:

      獲取子單元,用于獲取游戲客戶端系統(tǒng)主程序的入口函數(shù);

      修改子單元,用于修改游戲客戶端系統(tǒng)主程序文件,使得所述監(jiān)控程序在游戲客戶端系統(tǒng)創(chuàng)建文件或讀取文件時(shí)獲取所述文件的名稱、保存路徑、時(shí)間參數(shù)信息;

      所述數(shù)據(jù)獲取單元具體用于:

      根據(jù)獲取的所述文件的名稱、保存路徑、時(shí)間參數(shù)信息獲取加載的游戲數(shù)據(jù)的文件列表、所述游戲數(shù)據(jù)的加載時(shí)長(zhǎng)、所述游戲數(shù)據(jù)的處理時(shí)長(zhǎng)、所述游戲數(shù)據(jù)的處理順序中的一種或多種。

      其中,所述數(shù)據(jù)分析單元包括:

      第一數(shù)據(jù)分析子單元,用于當(dāng)所述游戲數(shù)據(jù)的信息包括加載的游戲數(shù)據(jù)的文件列表時(shí),比較所述文件列表中各文件的名稱,判斷是否存在相同的名稱;當(dāng)判斷存在相同的名稱時(shí),確定在啟動(dòng)游戲客戶端系統(tǒng)時(shí)存在游戲數(shù)據(jù)重復(fù)加載。

      其中,所述數(shù)據(jù)處理單元包括:

      第一數(shù)據(jù)處理子單元,用于當(dāng)確定啟動(dòng)游戲客戶端系統(tǒng)時(shí)存在游戲數(shù)據(jù)重復(fù)加載時(shí),將所述游戲客戶端系統(tǒng)配置成在第一次加載所述游戲數(shù)據(jù)時(shí),從本地磁盤(pán)讀取所述游戲數(shù)據(jù),并將其保存在內(nèi)存中,在第二次加載所述游戲數(shù)據(jù)時(shí),直接從內(nèi)存中讀取所述游戲數(shù)據(jù)。

      所述數(shù)據(jù)分析單元包括:

      第二數(shù)據(jù)分析子單元,用于當(dāng)所述游戲數(shù)據(jù)的信息包括加載的游戲數(shù)據(jù)的文件列表時(shí),根據(jù)所述文件列表各文件的屬性確定各文件是否為啟動(dòng)所述游戲客戶端系統(tǒng)的必要文件;如果存在至少一個(gè)文件不是啟動(dòng)所述游戲客戶端系統(tǒng)的必要文件,則確定所述游戲數(shù)據(jù)加載不合理。

      14、根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述數(shù)據(jù)處理單元包括:

      第二數(shù)據(jù)處理子單元,用于當(dāng)確定所述游戲數(shù)據(jù)加載不合理時(shí),創(chuàng)建必要文件列表,所述必要文件列表包括啟動(dòng)所述游戲客戶端系統(tǒng)的必要文件;將所述游戲客戶端配置成在啟動(dòng)所述游戲客戶端系統(tǒng)時(shí),僅加載所述必要文件列表中的文件所對(duì)應(yīng)的游戲數(shù)據(jù)。

      其中,所述數(shù)據(jù)分析單元包括:

      第三數(shù)據(jù)分析子單元,用于判斷獲取的所述游戲數(shù)據(jù)的加載時(shí)長(zhǎng)是否大于第一時(shí)間閾值;如果是,確定所述游戲數(shù)據(jù)的加載時(shí)間過(guò)長(zhǎng)。

      其中,所述數(shù)據(jù)處理單元包括以下所列中的一種或任意結(jié)合:

      第三數(shù)據(jù)處理子單元,用于當(dāng)確定所述游戲數(shù)據(jù)的加載時(shí)間過(guò)長(zhǎng)時(shí),改變所述游戲數(shù)據(jù)的存儲(chǔ)格式,將所述游戲數(shù)據(jù)存儲(chǔ)成容量小的格式;

      第四數(shù)據(jù)處理子單元,用于當(dāng)確定所述游戲數(shù)據(jù)的加載時(shí)間過(guò)長(zhǎng)時(shí),改變所述游戲數(shù)據(jù)的讀取方式,將所述游戲數(shù)據(jù)配置成從本地文件服務(wù)器或者本地游戲安裝包中進(jìn)行數(shù)據(jù)讀取;

      第五數(shù)據(jù)處理子單元,用于當(dāng)確定所述游戲數(shù)據(jù)的加載時(shí)間過(guò)長(zhǎng)時(shí),壓縮所述游戲數(shù)據(jù)。

      其中,所述數(shù)據(jù)分析單元包括:

      第四數(shù)據(jù)分析子單元,用于判斷獲取的所述游戲數(shù)據(jù)的處理時(shí)長(zhǎng)是否大于第二時(shí)間閾值;如果是,確定所述游戲數(shù)據(jù)的處理時(shí)間過(guò)長(zhǎng)。

      其中,所述數(shù)據(jù)處理單元包括以下所列中的一種或任意結(jié)合:

      第六處理子單元,用于當(dāng)確定所述游戲數(shù)據(jù)的處理時(shí)間過(guò)長(zhǎng)時(shí),對(duì)所述游戲數(shù)據(jù)進(jìn)行預(yù)處理,所述預(yù)處理包括對(duì)所述游戲數(shù)據(jù)進(jìn)行排序、壓縮或者格式轉(zhuǎn)換;

      第七處理子單元,用于當(dāng)確定所述游戲數(shù)據(jù)的處理時(shí)間過(guò)長(zhǎng)時(shí),對(duì)所述游戲客戶端系統(tǒng)進(jìn)行性能優(yōu)化處理,所述性能優(yōu)化處理包括優(yōu)化所述游戲客戶端系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)、處理邏輯或者算法;

      第八處理子單元,用于當(dāng)確定所述游戲數(shù)據(jù)的處理時(shí)間過(guò)長(zhǎng)時(shí),對(duì)所述游戲客戶端系統(tǒng)的數(shù)據(jù)處理順序進(jìn)行調(diào)整;

      第九處理子單元,用于當(dāng)確定所述游戲數(shù)據(jù)的處理時(shí)間過(guò)長(zhǎng)時(shí),對(duì)所述游戲客戶端系統(tǒng)的數(shù)據(jù)輸入輸出進(jìn)行優(yōu)化處理。

      上述各單元的功能可對(duì)應(yīng)于圖1詳細(xì)描述的上述游戲數(shù)據(jù)分析和處理方 法的處理步驟,于此不再贅述。

      本申請(qǐng)實(shí)施例提供的游戲數(shù)據(jù)分析、處理方法和裝置,可以通過(guò)預(yù)置的監(jiān)控程序獲取啟動(dòng)游戲客戶端系統(tǒng)時(shí)加載的游戲數(shù)據(jù)的信息,并可以分析所述游戲數(shù)據(jù)信息,獲得分析結(jié)果,根據(jù)所述分析結(jié)果對(duì)所述游戲客戶端系統(tǒng)進(jìn)行優(yōu)化處理,從而減少了游戲客戶端系統(tǒng)啟動(dòng)時(shí)間,降低了系統(tǒng)資源浪費(fèi),提高了系統(tǒng)數(shù)據(jù)處理效率,提升了用戶體驗(yàn)。

      專業(yè)人員應(yīng)該還可以進(jìn)一步意識(shí)到,結(jié)合本文中所公開(kāi)的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來(lái)實(shí)現(xiàn),為了清楚地說(shuō)明硬件和軟件的可互換性,在上述說(shuō)明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來(lái)執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來(lái)使用不同方法來(lái)實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本申請(qǐng)的范圍。

      結(jié)合本文中所公開(kāi)的實(shí)施例描述的方法或算法的步驟可以用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來(lái)實(shí)施。軟件模塊可以置于隨機(jī)存儲(chǔ)器(RAM)、內(nèi)存、只讀存儲(chǔ)器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤(pán)、可移動(dòng)磁盤(pán)、CD-ROM、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲(chǔ)介質(zhì)中。

      以上所述的具體實(shí)施方式,對(duì)本申請(qǐng)的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說(shuō)明,所應(yīng)理解的是,以上所述僅為本申請(qǐng)的具體實(shí)施方式而已,并不用于限定本申請(qǐng)的保護(hù)范圍,凡在本申請(qǐng)的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請(qǐng)的保護(hù)范圍之內(nèi)。

      當(dāng)前第1頁(yè)1 2 3 
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1