一種提高游戲運行速度的方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種提高游戲運行速度的方法和裝置,涉及瀏覽器【技術(shù)領(lǐng)域】。所述方法,包括:當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽器輔助對象加載游戲環(huán)境優(yōu)化工具條;依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資源的優(yōu)化處理。本發(fā)明可以在IE內(nèi)核的瀏覽器中,當(dāng)瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽器輔助對象加載游戲環(huán)境優(yōu)化工具條,然后依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資源的優(yōu)化處理,由此解決了在IE瀏覽器中運行網(wǎng)頁游戲時,其系統(tǒng)環(huán)境中其他進程占用的資源多而影響游戲本身的運行流暢問題,達到釋放游戲運行環(huán)境中不必要的系統(tǒng)資源,使游戲運行更順暢的有益效果。
【專利說明】一種提高游戲運行速度的方法及裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及互聯(lián)網(wǎng)【技術(shù)領(lǐng)域】,具體涉及一種提高游戲運行速度的方法及裝置。
【背景技術(shù)】
[0002] 瀏覽器是指可以顯示網(wǎng)頁服務(wù)器或者文件系統(tǒng)的HTML文件內(nèi)容,并讓用戶與這 些文件交互的一種軟件。網(wǎng)頁瀏覽器主要通過HTTP協(xié)議與網(wǎng)頁服務(wù)器交互并獲取網(wǎng)頁, 這些網(wǎng)頁由URL指定,文件格式通常為HTML,并由MIME(Multipurpose Internet Mail Extensions,多用途互聯(lián)網(wǎng)郵件擴展)在HTTP協(xié)議中指明。一個網(wǎng)頁中可以包括多個文檔, 每個文檔都是分別從服務(wù)器獲取的。大部分的瀏覽器本身支持除了 HTML之外的廣泛的格 式,例如:JPEG、PNG、GIF等圖像格式,并且能夠擴展支持眾多的插件(plug-ins)比如flash 插件。
[0003] 目前,很多游戲廠商都會開發(fā)網(wǎng)頁游戲,比如在一個頁面中加載flash插件,然后 運行游戲內(nèi)容,但是對于IE內(nèi)核的網(wǎng)頁中運行的游戲內(nèi)容,但是由于游戲運行時各種計算 過程很多,比如動態(tài)渲染、游戲內(nèi)容持續(xù)下載等,其占用系統(tǒng)資源較多,而當(dāng)游戲運行時,系 統(tǒng)本身占用的資源已經(jīng)很多,那么就會影響游戲運行的順暢程度,比如圖像播放的不連續(xù), 因網(wǎng)速不行而掉線等。
【發(fā)明內(nèi)容】
[0004] 鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上 述問題的一種提高游戲運行速度的方法及裝置。
[0005] 依據(jù)本發(fā)明的一個方面,提供了一種提高游戲運行速度的方法,包括:
[0006] 當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽器輔助對象加載游戲環(huán) 境優(yōu)化工具條;
[0007] 依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資源的優(yōu)化處理。
[0008] 優(yōu)選的,當(dāng)IE內(nèi)核的瀏覽器進入游戲模式后,通過瀏覽器輔助對象加載系統(tǒng)優(yōu)化 工具包括:
[0009] 當(dāng)IE內(nèi)核的瀏覽器的當(dāng)前頁面觸發(fā)頁面加載事件時,生成消息通知;其中,所述 消息通知中攜帶有所述頁面加載事件信息;
[0010] 在預(yù)置函數(shù)的指示下,將所述消息通知通過所述IE內(nèi)核的瀏覽器中的設(shè)定接口 發(fā)送至獨立于瀏覽器的應(yīng)用程序;
[0011] 接收所述獨立于瀏覽器的應(yīng)用程序返回的調(diào)用請求;所述調(diào)用請求為當(dāng)所述獨立 于瀏覽器的應(yīng)用程序判斷所述頁面加載事件為游戲頁面加載事件時返回;
[0012] 響應(yīng)所述調(diào)用請求,調(diào)用動態(tài)鏈接庫,并通過所述動態(tài)鏈接庫在所述IE內(nèi)核的瀏 覽器中加載游戲環(huán)境優(yōu)化工具條;
[0013] 其中,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立于瀏覽器的應(yīng)用程序通過瀏覽 器輔助對象注入所述IE內(nèi)核的瀏覽器,以使所述IE內(nèi)核的瀏覽器獲取并加載所述預(yù)置函 數(shù)和所述動態(tài)鏈接庫。
[0014] 優(yōu)選的,所述頁面加載事件信息包括:所述當(dāng)前頁面的統(tǒng)一資源定位符URL和標(biāo) 題。
[0015] 優(yōu)選的,在所述生成消息通知的步驟之后,所述方法還包括:
[0016] 確定所述當(dāng)前頁面的加載狀態(tài);其中,所述加載狀態(tài)包括:加載請求狀態(tài)、訪問完 成狀態(tài)、文檔建立狀態(tài)和頁面加載完成狀態(tài)。
[0017] 優(yōu)選的,所述在預(yù)置函數(shù)的指示下,將所述消息通知通過所述IE內(nèi)核的瀏覽器中 的設(shè)定接口發(fā)送至獨立于瀏覽器的應(yīng)用程序,包括:
[0018] 當(dāng)確定所述當(dāng)前頁面的加載狀態(tài)為訪問完成狀態(tài)時,在預(yù)置函數(shù)的指示下,將所 述消息通知通過所述IE內(nèi)核的瀏覽器中的設(shè)定接口發(fā)送至獨立于瀏覽器的應(yīng)用程序。
[0019] 優(yōu)選的,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立于瀏覽器的應(yīng)用程序通過瀏 覽器輔助對象注入所述IE內(nèi)核的瀏覽器,包括 :
[0020] 所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由網(wǎng)盾通過瀏覽器輔助對象注入所述IE內(nèi)核的 瀏覽器。
[0021] 優(yōu)選的,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立于瀏覽器的應(yīng)用程序通過瀏 覽器輔助對象注入所述IE內(nèi)核的瀏覽器,包括 :
[0022] 所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立于瀏覽器的應(yīng)用程序通過瀏覽器輔 助對象注入至所述IE內(nèi)核的瀏覽器的主進程中。
[0023] 優(yōu)選的,所述啟動對系統(tǒng)資源的優(yōu)化處理包括:
[0024] 查找所有運行的進程;
[0025] 將所述運行的進程與進程清理白名單匹配;對于未匹配上的進程,則調(diào)用系統(tǒng)內(nèi) 存清理函數(shù)SetProcessWorkingSetSize清理各運行的進程占用的閑置的內(nèi)存;對于匹配 上的進程,則不清理該進程的占用的內(nèi)存。
[0026] 優(yōu)選的,所述進程清理白名單根據(jù)用戶的反饋數(shù)據(jù)進行更新。
[0027] 優(yōu)選的,所述啟動對系統(tǒng)資源的優(yōu)化處理包括:
[0028] 獲取瀏覽器中除了當(dāng)前游戲頁面所在瀏覽器子進程之外的其他瀏覽器子進程及 其對應(yīng)的各第一資源占用信息;
[0029] 判斷所述第一資源占用信息是否大于第一閾值;如果大于,則將對應(yīng)的瀏覽器子 進程進行優(yōu)化處理。
[0030] 優(yōu)選的,所述將對應(yīng)的瀏覽器子進程占用的資源進行優(yōu)化包括:
[0031] 通過攔截所述其他瀏覽器子進程中進行網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臑g覽器子進程對數(shù)據(jù)傳 輸函數(shù)的調(diào)用,以暫停所述瀏覽器子進程的網(wǎng)絡(luò)數(shù)據(jù)的傳輸;
[0032] 和/或,對于所述其他瀏覽器子進程中進行網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臑g覽器子進程,將非 當(dāng)前游戲頁面的瀏覽器子進程進行關(guān)閉。
[0033] 優(yōu)選的,所述啟動對系統(tǒng)資源的優(yōu)化處理包括:
[0034] 通過瀏覽器接口獲取瀏覽器所在計算機系統(tǒng)的當(dāng)前運行的非瀏覽器進程的第二 進程信息及其對應(yīng)的各第二資源占用信息;
[0035] 將瀏覽器所在計算機系統(tǒng)的當(dāng)前運行的非瀏覽器進程的第二進程信息中符合預(yù) 置資源占用優(yōu)化設(shè)置的進程進行優(yōu)化處理。
[0036] 優(yōu)選的,所述第二資源占用信息至少根據(jù)如下一項信息計算得到:瀏覽器所在計 算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程的CPU占用率、內(nèi)存占用量、輸入輸出端口 占用量、網(wǎng)絡(luò)吞吐量。
[0037] 優(yōu)選的,對于瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程,所述 預(yù)置資源占用優(yōu)化設(shè)置包括第一優(yōu)化設(shè)置和第二優(yōu)化設(shè)置;
[0038] 第一優(yōu)化設(shè)置的判斷條件包括以下一個或多個:判斷瀏覽器所在計算機系統(tǒng)當(dāng)前 運行的非瀏覽器進程的第二進程的第二資源占用信息的數(shù)值是否超出預(yù)設(shè)的第二閾值,如 果超出所述第二閾值,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二 進程滿足所述第一優(yōu)化設(shè)置;根據(jù)進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏 覽器進程的第二進程是否出現(xiàn)在前臺的運行進程中,如果沒有出現(xiàn)在所述前臺的運行進程 中,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程滿足所述第一 優(yōu)化設(shè)置,其中,所述前臺的運行進程包括任務(wù)欄上顯示的進程和窗口上顯示的進程;根據(jù) 進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程是否符合預(yù)設(shè) 的黑名單規(guī)則,如果符合,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的 第二進程滿足所述第一優(yōu)化設(shè)置;根據(jù)進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非 瀏覽器進程的第二進程是否符合預(yù)設(shè)的運行條件,如果不符合,則確定所述瀏覽器所在計 算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程滿足所述第一優(yōu)化設(shè)置;第二優(yōu)化設(shè)置的判 斷條件為:當(dāng)瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程不滿足所述第一 優(yōu)化設(shè)置時,判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程是否出現(xiàn)異 常,如果出現(xiàn)異常,則確定所述進程滿足所述第二優(yōu)化設(shè)置,其中,所述異常包括:圖形接口 設(shè)備⑶I泄漏、窗口卡死和CPU卡死。
[0039] 根據(jù)本發(fā)明的另外一個方面,提供了一種提高游戲運行速度的裝置,包括:
[0040] 優(yōu)化加載模塊,適于當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽器輔 助對象加載游戲環(huán)境優(yōu)化工具條;
[0041] 優(yōu)化模塊,適于依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資源 的優(yōu)化處理。
[0042] 優(yōu)選的,所述優(yōu)化加載模塊包括:
[0043] 生成模塊,適于當(dāng)IE內(nèi)核的瀏覽器的當(dāng)前頁面觸發(fā)頁面加載事件時,生成消息通 知;其中,所述消息通知中攜帶有所述頁面加載事件信息;
[0044] 發(fā)送模塊,適于在預(yù)置函數(shù)的指示下,將所述消息通知通過所述IE內(nèi)核的瀏覽器 中的設(shè)定接口發(fā)送至獨立于瀏覽器的應(yīng)用程序;
[0045] 接收模塊,適于接收所述獨立于瀏覽器的應(yīng)用程序返回的調(diào)用請求;所述調(diào)用 請求為當(dāng)所述獨立于瀏覽器的應(yīng)用程序判斷所述頁面加載事件為游戲頁面加載事件時返 回;
[0046] 調(diào)用加載模塊,適于響應(yīng)所述調(diào)用請求,調(diào)用動態(tài)鏈接庫,并通過所述動態(tài)鏈接庫 在所述IE內(nèi)核的瀏覽器中加載游戲環(huán)境優(yōu)化工具條;
[0047] 其中,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立于瀏覽器的應(yīng)用程序通過瀏覽 器輔助對象注入所述IE內(nèi)核的瀏覽器,以使所述IE內(nèi)核的瀏覽器獲取并加載所述預(yù)置函 數(shù)和所述動態(tài)鏈接庫。
[0048] 優(yōu)選的,所述頁面加載事件信息包括:所述當(dāng)前頁面的統(tǒng)一資源定位符URL和標(biāo) 題。
[0049] 優(yōu)選的,所述裝置還包括:
[0050] 狀態(tài)確定模塊,適于在所述生成模塊生成消息通知之后,確定所述當(dāng)前頁面的加 載狀態(tài);其中,所述加載狀態(tài)包括:加載請求狀態(tài)、訪問完成狀態(tài)、文檔建立狀態(tài)和頁面加 載完成狀態(tài)。
[0051] 優(yōu)選的,所述發(fā)送模塊,具體適于在確定所述當(dāng)前頁面的加載狀態(tài)為訪問完成狀 態(tài)時,在預(yù)置函數(shù)的指示下,將所述消息通知通過所述IE內(nèi)核的瀏覽器中的設(shè)定接口發(fā)送 至第三方應(yīng)用。
[0052] 優(yōu)選的,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由網(wǎng)盾通過瀏覽器輔助對象注入所述IE 內(nèi)核的瀏覽器。
[0053] 優(yōu)選的,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立于瀏覽器的應(yīng)用程序通過瀏 覽器輔助對象注入至所述IE內(nèi)核的瀏覽器的主進程中。
[0054] 優(yōu)選的,所述優(yōu)化模塊包括:
[0055] 系統(tǒng)進程查詢模塊,適于查找瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的 第二進程;
[0056] 匹配清理模塊,適于將所述當(dāng)前運行進程與進程清理白名單匹配;對于未匹配上 的進程,則調(diào)用系統(tǒng)內(nèi)存清理函數(shù)SetProcessWorkingSetSize清理各運行的進程占用的 閑置的內(nèi)存;對于匹配上的進程,則不清理該進程的占用的內(nèi)存。
[0057] 優(yōu)選的,還包括:
[0058] 名單更新模塊,適于所述進程清理白名單根據(jù)用戶的反饋數(shù)據(jù)進行更新。
[0059] 優(yōu)選的,所述優(yōu)化模塊包括:
[0060] 瀏覽器子進程獲取模塊,適于獲取瀏覽器中除了當(dāng)前游戲頁面所在瀏覽器子進程 之外的其他瀏覽器子進程及其對應(yīng)的各第一資源占用信息;
[0061] 瀏覽器子進程判斷處理模塊,適于判斷所述第一資源占用信息是否大于第一閾 值;如果大于,則將對應(yīng)的瀏覽器子進程進行優(yōu)化處理。
[0062] 優(yōu)選的,所述瀏覽器子進程判斷處理模塊包括:
[0063] 第一判斷模塊,通過攔截所述其他瀏覽器子進程中進行網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臑g覽器子 進程對數(shù)據(jù)傳輸函數(shù)的調(diào)用,以暫停所述瀏覽器子進程的網(wǎng)絡(luò)數(shù)據(jù)的傳輸;
[0064] 和/或,第二判斷模塊,對于所述其他瀏覽器子進程中進行網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臑g覽 器子進程,將非當(dāng)前游戲頁面的瀏覽器子進程進行關(guān)閉。
[0065] 優(yōu)選的,所述優(yōu)化模塊包括:
[0066] 計算機進程獲取模塊,適于通過瀏覽器接口獲取瀏覽器所在計算機系統(tǒng)的當(dāng)前運 行的非瀏覽器進程的第二進程信息及其對應(yīng)的各第二資源占用信息;
[0067] 計算機進程優(yōu)化模塊,適于將瀏覽器所在計算機系統(tǒng)的當(dāng)前運行的非瀏覽器進程 的第二進程信息中符合預(yù)置資源占用優(yōu)化設(shè)置的進程進行優(yōu)化處理。
[0068] 優(yōu)選的,所述第二資源占用信息至少根據(jù)如下一項信息計算得到:瀏覽器所在計 算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程的CPU占用率、內(nèi)存占用量、輸入輸出端口 占用量、網(wǎng)絡(luò)吞吐量。
[0069] 優(yōu)選的,對于瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程,所述 預(yù)置資源占用優(yōu)化設(shè)置包括第一優(yōu)化設(shè)置和第二優(yōu)化設(shè)置;
[0070] 第一優(yōu)化設(shè)置的判斷條件包括以下一個或多個:判斷瀏覽器所在計算機系統(tǒng)當(dāng)前 運行的非瀏覽器進程的第二進程的第二資源占用信息的數(shù)值是否超出預(yù)設(shè)的第二閾值,如 果超出所述第二閾值,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二 進程滿足所述第一優(yōu)化設(shè)置;根據(jù)進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏 覽器進程的第二進程是否出現(xiàn)在前臺的運行進程中,如果沒有出現(xiàn)在所述前臺的運行進程 中,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程滿足所述第一 優(yōu)化設(shè)置,其中,所述前臺的運行進程包括任務(wù)欄上顯示的進程和窗口上顯示的進程;根據(jù) 進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程是否符合預(yù)設(shè) 的黑名單規(guī)則,如果符合,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的 第二進程滿足所述第一優(yōu)化設(shè)置;根據(jù)進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非 瀏覽器進程的第二進程是否符合預(yù)設(shè)的運行條件,如果不符合,則確定所述瀏覽器所在計 算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程滿足所述第一優(yōu)化設(shè)置;
[0071] 第二優(yōu)化設(shè)置的判斷條件為:當(dāng)瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程 的第二進程不滿足所述第一優(yōu)化設(shè)置時,判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器 進程的第二進程是否出現(xiàn)異常,如果出現(xiàn)異常,則確定所述進程滿足所述第二優(yōu)化設(shè)置,其 中,所述異常包括:圖形接口設(shè)備⑶I泄漏、窗口卡死和CPU卡死。。
[0072] 根據(jù)本發(fā)明的一種提高游戲運行速度的方法可以在IE內(nèi)核的瀏覽器中,當(dāng)瀏覽 器觸發(fā)游戲頁面加載事件后,通過瀏覽器輔助對象加載游戲環(huán)境優(yōu)化工具條,然后依據(jù)用 戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資源的優(yōu)化處理,比如釋放不用的內(nèi) 存資源,降低網(wǎng)絡(luò)占用資源等由此解決了在IE瀏覽器中運行網(wǎng)頁游戲時,其運行的系統(tǒng)環(huán) 境中其他進程占用的資源多而影響游戲本身的運行流暢問題,取得了釋放游戲運行環(huán)境中 不必要的系統(tǒng)資源,使游戲運行更順暢的有益效果。
[0073] 上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段, 而可依照說明書的內(nèi)容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠 更明顯易懂,以下特舉本發(fā)明的【具體實施方式】。
【專利附圖】
【附圖說明】
[0074] 通過閱讀下文優(yōu)選實施方式的詳細描述,各種其他的優(yōu)點和益處對于本領(lǐng)域普通 技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認(rèn)為是對本發(fā)明 的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0075] 圖1示出了根據(jù)本發(fā)明一個實施例一的一種提高游戲運行速度的方法的流程示 意圖;
[0076] 圖2示出了根據(jù)本發(fā)明一個實施例二的一種提高游戲運行速度的方法的流程示 意圖;
[0077] 圖3示出了根據(jù)本發(fā)明一個實施例三的一種提高游戲運行速度的方法的流程示 意圖;
[0078] 圖4示出了根據(jù)本發(fā)明一個實施例四的一種提高游戲運行速度的方法的流程示 意圖;
[0079] 圖5示出了根據(jù)本發(fā)明一個實施例五的一種提高游戲運行速度的方法的流程示 意圖;
[0080] 圖6示出了根據(jù)本發(fā)明一個實施例六的一種提高游戲運行速度的裝置的結(jié)構(gòu)示 意圖;
[0081] 圖7示出了根據(jù)本發(fā)明一個實施例七的一種提高游戲運行速度的裝置的結(jié)構(gòu)示 意圖;
[0082] 圖8示出了根據(jù)本發(fā)明一個實施例八的一種提高游戲運行速度的裝置的結(jié)構(gòu)示 意圖;
[0083] 圖9示出了根據(jù)本發(fā)明一個實施例九的一種提高游戲運行速度的裝置的結(jié)構(gòu)示 意圖;以及
[0084] 圖10示出了根據(jù)本發(fā)明一個實施例十的一種提高游戲運行速度的裝置的結(jié)構(gòu)示 意圖。
【具體實施方式】
[0085] 下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開 的示例性實施例,然而應(yīng)當(dāng)理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施例 所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍 完整的傳達給本領(lǐng)域的技術(shù)人員。
[0086] 實施例一
[0087] 參照圖1,示出了本發(fā)明第一實施例中一種提高游戲運行速度的方法的流程示意 圖,具體可以包括:
[0088] 步驟110,當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽器輔助對象加 載游戲環(huán)境優(yōu)化工具條;
[0089] 瀏覽器最核心的部分是渲染引擎(Rendering Engine),我們一般習(xí)慣稱之為"瀏 覽器內(nèi)核",渲染引擎負責(zé)解析網(wǎng)頁語法(如,標(biāo)準(zhǔn)通用標(biāo)記語言的子集HTML、JavaScript) 并渲染、展示網(wǎng)頁。因此,所謂的瀏覽器內(nèi)核通常也就是指瀏覽器所采用的渲染引擎,渲染 引擎決定了瀏覽器如何顯示網(wǎng)頁的內(nèi)容以及頁面的格式信息。不同的瀏覽器內(nèi)核對網(wǎng)頁編 寫語法的解析也有所不同,因此同一網(wǎng)頁在不同的內(nèi)核瀏覽器里的渲染、展示效果也可能 不同。
[0090] 在本發(fā)明實施例中,針對IE內(nèi)核瀏覽器,當(dāng)監(jiān)測到IE內(nèi)核瀏覽器觸發(fā)游戲頁面加 載事件后,通過瀏覽器輔助對象(ΒΗ0)加載游戲環(huán)境優(yōu)化工具條。該游戲環(huán)境優(yōu)化工具條 為用戶提供操作按鈕,比如啟動/暫停變速按鈕,變速倍數(shù)選擇按鈕,用戶觸發(fā)該工具條中 的啟動按鈕后,該工具條對應(yīng)的后臺進程可實現(xiàn)游戲變速功能。
[0091] 步驟120,依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資源的優(yōu)化 處理。
[0092] 當(dāng)針對當(dāng)前的游戲網(wǎng)頁加載完包括游戲環(huán)境優(yōu)化功能的工具條后,使用瀏覽器 的用戶就可以對系統(tǒng)資源進行優(yōu)化處理,比如清空不用的內(nèi)存,關(guān)閉不必要進程,降低其 他進程占用的網(wǎng)絡(luò)流量。
[0093] 本發(fā)明通過瀏覽器輔助對象對IE內(nèi)核的瀏覽器觸發(fā)的游戲頁面,加載游戲環(huán)境 優(yōu)化工具條,然后方便用戶在游戲過程開始或者游戲過程中對游戲的系統(tǒng)環(huán)境進行優(yōu)化, 降低游戲運行的系統(tǒng)環(huán)境中其他進程占用的資源多的問題,使游戲運行更順暢。
[0094] 實施例二
[0095] 參照圖2,示出了本發(fā)明第二實施例中一種提高游戲運行速度的方法的流程示意 圖,具體可以包括:
[0096] 步驟210,當(dāng)IE內(nèi)核的瀏覽器的當(dāng)前頁面觸發(fā)頁面加載事件時,生成消息通知;其 中,所述消息通知中攜帶有所述頁面加載事件信息;
[0097] 在本實施例中,所述消息通知中攜帶有所述頁面加載事件信息。例如,當(dāng)用戶使用 IE內(nèi)核的瀏覽器瀏覽網(wǎng)頁,并請求訪問一個頁面時,會觸發(fā)頁面加載事件,瀏覽器生成攜帶 有所述頁面加載事件信息的消息通知。
[0098] 較佳地,所述頁面加載事件信息可以包括:所述當(dāng)前頁面的統(tǒng)一資源定位符 URL(Uniform Resource Locator)和標(biāo)題Title。S卩,所述頁面加載事件信息包括用戶請求 打開的頁面的URL和標(biāo)題Title。如,用戶在IE內(nèi)核的瀏覽器的地址欄輸入www. sina. com. cn,并點擊回車請求訪問時,瀏覽器可以生成一個攜帶URL為www. sina. com. cn、標(biāo)題為"新 浪首頁"的消息通知。
[0099] 這里需要說明的是,所述瀏覽器具體可以是一種IE內(nèi)核的瀏覽器;或者可以是IE 瀏覽器。
[0100] 可選的,所述頁面加載事件信息包括:所述當(dāng)前頁面的統(tǒng)一資源定位符URL和標(biāo) 題。
[0101] 優(yōu)選的,在所述生成消息通知的步驟之后,所述方法還包括:
[0102] 步驟S212,確定所述當(dāng)前頁面的加載狀態(tài);其中,所述加載狀態(tài)包括:加載請求狀 態(tài)、訪問完成狀態(tài)、文檔建立狀態(tài)和頁面加載完成狀態(tài)。
[0103] 瀏覽器在從接收到頁面訪問請求到完成頁面的加載顯示的過程中,至少可以包括 四種加載狀態(tài):加載請求狀態(tài)、訪問完成狀態(tài)、文檔建立狀態(tài)和頁面加載完成狀態(tài)。瀏覽在 任意一種狀態(tài)過程中都可以生成消息通知,但是,在加載請求狀態(tài)過程中生成的消息通知 不能完整包含URL信息和Title信息;在文檔建立狀態(tài)或頁面加載完成狀態(tài)過程中生成的 消息通知時效性差,不能在第一時間將消息通知發(fā)送出去,影響工具條的加載效率。因此, 在本實施例中,較佳地,當(dāng)瀏覽器確定所述當(dāng)前頁面的加載狀態(tài)為訪問完成狀態(tài)時,執(zhí)行步 驟 220。
[0104] 步驟220,在預(yù)置函數(shù)的指示下,將所述消息通知通過所述IE內(nèi)核的瀏覽器中的 設(shè)定接口發(fā)送至獨立于瀏覽器的應(yīng)用程序;
[0105] 其中,所述預(yù)置函數(shù)可以用來指示IE內(nèi)核的瀏覽器將在當(dāng)前頁面觸發(fā)頁面加載 事件時生成的消息通知通過所述設(shè)定接口發(fā)送至所述獨立于瀏覽器的應(yīng)用程序。
[0106] 較佳地,通過所述設(shè)定接口可以調(diào)用瀏覽器中的其它接口,進而可以獲取瀏覽器 中的各類事件消息。其中,所述設(shè)定接口具體可以是IWebBrowser接口。在IE內(nèi)核的瀏覽 器中,通過所述IWebBrowser接口可以用于調(diào)用其它接口,從其它接口獲取所述預(yù)置函數(shù) 指示的、需要獲取的信息。
[0107] WebBrowser是IE內(nèi)核的瀏覽器中內(nèi)置的瀏覽器控件,通過WebBrowser控件可 以向Windows窗體客戶端應(yīng)用程序如瀏覽器添加基于Web的控件。IWebBrowser接口是 WebBrowser控件提供的接口,通過IWebBrowser接口如IWebBrowser2接口,可以獲取瀏覽 器的信息、與第三方交互、并實現(xiàn)設(shè)定的功能等等。
[0108] 步驟230,接收所述獨立于瀏覽器的應(yīng)用程序返回的調(diào)用請求;所述調(diào)用請求為 當(dāng)所述獨立于瀏覽器的應(yīng)用程序判斷所述頁面加載事件為游戲頁面加載事件時返回;
[0109] 瀏覽器接收所述獨立于瀏覽器的應(yīng)用程序在接收到所述消息通知,并確定所述消 息通知中的URL和標(biāo)題Title與預(yù)置標(biāo)準(zhǔn)信息進行匹配之后,判斷所述頁面加載事件為游 戲頁面加載事件后返回的調(diào)用請求。
[0110] 在本實施例中,加載的工具條可以是用于對游戲操作的游戲工具條,故,所述預(yù)置 標(biāo)準(zhǔn)信息對應(yīng)指示的頁面可以是游戲頁面。當(dāng)所述獨立于瀏覽器的應(yīng)用程序確定所述消息 通知中的URL和標(biāo)題Title與預(yù)置標(biāo)準(zhǔn)信息相匹配時,則確定當(dāng)前頁面加載的是游戲頁面, 符合加載游戲環(huán)境優(yōu)化工具條的方法,所述獨立于瀏覽器的應(yīng)用程序向瀏覽器側(cè)發(fā)送調(diào)用 請求,請求加載所述游戲環(huán)境優(yōu)化工具條。
[0111] 步驟240,響應(yīng)所述調(diào)用請求,調(diào)用動態(tài)鏈接庫,并通過所述動態(tài)鏈接庫在所述IE 內(nèi)核的瀏覽器中加載游戲環(huán)境優(yōu)化工具條;
[0112] 其中,所述預(yù)置函數(shù)和所述DLL可以由所述獨立于瀏覽器的應(yīng)用程序通過ΒΗ0注 入所述IE內(nèi)核的瀏覽器,以使所述IE內(nèi)核的瀏覽器獲取并加載所述預(yù)置函數(shù)和所述DLL。
[0113] 其中,較佳地,所述獨立于瀏覽器的應(yīng)用程序可以是網(wǎng)盾(如,360網(wǎng)盾),所述預(yù) 置函數(shù)和所述DLL可以由網(wǎng)盾通過ΒΗ0注入所述IE內(nèi)核的瀏覽器。
[0114] 另一較佳地,所述預(yù)置函數(shù)和所述DLL由所述獨立于瀏覽器的應(yīng)用程序通過ΒΗ0 注入所述IE內(nèi)核的瀏覽器具體是指:所述預(yù)置函數(shù)和所述DLL由所述獨立于瀏覽器的應(yīng)用 程序通過ΒΗ0注入至所述IE內(nèi)核的瀏覽器的主進程中。
[0115] 其中,DLL(Dynamic Link Library,動態(tài)鏈接庫)是一個包含可由多個程序同時使 用的代碼和數(shù)據(jù)的庫。DLL文件是一種不可執(zhí)行的二進制程序文件,它允許程序共享執(zhí)行特 殊任務(wù)所必需的代碼和其他資源。BHO (Browser Helper Object,瀏覽器輔助對象)是微軟 推出的作為瀏覽器對第三方程序員開放交互接口的業(yè)界標(biāo)準(zhǔn)。
[0116] 步驟250,依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資源的優(yōu)化 處理。
[0117] 綜上所述,本實施例所述的一種在瀏覽器中加載工具條的方法,當(dāng)IE內(nèi)核的瀏覽 器的當(dāng)前頁面觸發(fā)頁面加載事件時,生成消息通知,并將所述消息通知發(fā)送至第三方應(yīng)用; 然后響應(yīng)第三方應(yīng)用返回的調(diào)用請求,調(diào)用動態(tài)鏈接庫DLL,并通過所述DLL在所述IE內(nèi)核 的瀏覽器中加載設(shè)定的游戲環(huán)境優(yōu)化工具條。用戶可以通過加載在IE內(nèi)核的瀏覽器側(cè)的 設(shè)定游戲環(huán)境優(yōu)化工具條對所述IE內(nèi)核的瀏覽器中的當(dāng)前頁面進行快捷的游戲環(huán)境優(yōu)化 操作不再需要用戶去切換應(yīng)用程序或者管理界面即可在當(dāng)前網(wǎng)頁中對游戲環(huán)境的系統(tǒng)資 源進行優(yōu)化。
[0118] 實施例三
[0119] 參照圖3,示出了本發(fā)明第三實施例中一種提高游戲運行速度的方法的流程示意 圖,具體可以包括:
[0120] 步驟310,當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽器輔助對象加 載游戲環(huán)境優(yōu)化工具條;
[0121] 步驟320,依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),查找所有運行的進程;
[0122] 在本發(fā)明實施例中可采用進程查找API函數(shù)Process32First和Process32Next, 查找到所有當(dāng)前系統(tǒng)中運行的進程。
[0123] 步驟330,將所述運行的進程與進程清理白名單匹配;
[0124] 步驟332,對于未匹配上的進程,則調(diào)用系統(tǒng)內(nèi)存清理函數(shù) SetProcessWorkingSetSize清理各運行的進程占用的閑置的內(nèi)存;
[0125] 步驟334,對于匹配上的進程,則不清理該進程的占用的內(nèi)存。
[0126] 在本發(fā)明實施例中,將運行的進程與進程清理白名單匹配,從而將清理內(nèi)存后可 能影響網(wǎng)頁游戲正常運行的進程剔除,不對清理這些進程的閑置內(nèi)存。而將清理內(nèi)存后不 影響游戲正常運行的進程的閑置內(nèi)存清理掉。其中系統(tǒng)內(nèi)存清理函數(shù)的原型是:
[0127] SetProcessWorkingSetSize(
[0128] -in HANDLE hProcess,
[0129] -in SIZE_T dwMinimumfforkingSetSize,
[0130] -in SIZE_T dwMaximumfforkingSetSize
[0131] )
[0132] 其為設(shè)置操作系統(tǒng)實際劃分給進程使用的內(nèi)存容量。其中參數(shù):
[0133] hProcess Long,指定一個進程的句柄
[0134] SIZE_T dwMinimumWorkingSetSize,用于裝載最小進程容量的一個變量
[0135] SIZE_T dwMaximumWorkingSetSize,用于裝載最大進程容量的一個變量。
[0136] 優(yōu)選的,所述進程清理白名單根據(jù)用戶的反饋數(shù)據(jù)進行更新。
[0137] 在本發(fā)明實施例中,進程清理白名單可通過多種方式獲得,比如技術(shù)人員在瀏覽 器的網(wǎng)頁游戲運行時對其他進程的內(nèi)存進行清理測試,如果該清理該進程的內(nèi)存后,是瀏 覽器無法正常運行網(wǎng)頁游戲,那么將其加入進程清理白名單,該進程清理白名單中的進程 則不對其進程清理。當(dāng)然,用戶在使用過程中對某些進程進行清理時,可以讓用戶主動提交 反饋信息,或者通過監(jiān)控進程主動記錄影響網(wǎng)頁游戲正常運行的進程并反饋至服務(wù)器,由 服務(wù)器更新對進程清理名單進行更新,然后下發(fā)至各客戶端。
[0138] 綜上所述,本實施例所述的一種在瀏覽器中加載工具條的方法,當(dāng)IE內(nèi)核的瀏覽 器的當(dāng)前頁面觸發(fā)頁面加載事件時,通過ΒΗ0加載游戲環(huán)境優(yōu)化工具條。用戶可以通過加 載在IE內(nèi)核的瀏覽器側(cè)的游戲環(huán)境優(yōu)化工具條對所述IE內(nèi)核的瀏覽器中的當(dāng)前頁面進行 快捷的游戲環(huán)境優(yōu)化操作不再需要用戶去切換應(yīng)用程序或者管理界面即可在當(dāng)前網(wǎng)頁中 對游戲環(huán)境的系統(tǒng)資源進行優(yōu)化。
[0139] 實施例四
[0140] 參照圖4,示出了本發(fā)明第四實施例中一種提高游戲運行速度的方法的流程示意 圖,具體可以包括:
[0141] 步驟410,當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽器輔助對象加 載游戲環(huán)境優(yōu)化工具條;
[0142] 步驟420,依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),獲取瀏覽器中除了當(dāng)前 游戲頁面所在瀏覽器子進程之外的其他瀏覽器子進程及其對應(yīng)的各第一資源占用信息;
[0143] 在本發(fā)明實施例中,瀏覽器框架進程下可能存在各種瀏覽器子進程,比如標(biāo)簽頁 進程,依托于瀏覽器的各種插件進程。在用戶觸發(fā)上述工具條后,則可通過瀏覽器框架進程 獲取其框架下的各種瀏覽器子進程。對于當(dāng)前運行網(wǎng)頁游戲的進程將其排除在清理對象之 夕卜,對于當(dāng)前運行網(wǎng)頁游戲的進程之外的瀏覽器子進程,則可獲取其第一資源占用信息,t匕 如內(nèi)存占用量,網(wǎng)絡(luò)流量占用量等。
[0144] 獲取的瀏覽器子進程信息至少包括:網(wǎng)頁標(biāo)簽子進程或瀏覽器插件進程的信息、 瀏覽器擴展進程的信息等。
[0145] 可選地,當(dāng)瀏覽器子進程信息為網(wǎng)頁標(biāo)簽子進程時,瀏覽器子進程信息可包括: 網(wǎng)頁標(biāo)簽子進程身份標(biāo)識號、網(wǎng)頁標(biāo)簽子進程標(biāo)題、網(wǎng)頁標(biāo)簽子進程地址、網(wǎng)頁標(biāo)簽子進程 圖標(biāo)其中一項或者幾項;及其第一資源占用信息可包括:網(wǎng)頁標(biāo)簽子進程的帶寬占用、網(wǎng) 頁標(biāo)簽子進程FPS值、網(wǎng)頁標(biāo)簽子進程的CPU占用率、網(wǎng)頁標(biāo)簽子進程的內(nèi)存占用量其中一 項或幾項。
[0146] 當(dāng)瀏覽器子進程信息為插件進程的信息時,瀏覽器子進程信息可包括:插件進程 圖標(biāo)、插件進程名稱其中一項或幾項;其第一資源占用信息可包括插件進程的帶寬占用、插 件進程的快速分組調(diào)度FPS值、插件進程的CPU占用率、插件進程的內(nèi)存占用量其中一項或 幾項:
[0147] 當(dāng)瀏覽器子進程信息為擴展進程的信息時,瀏覽器子進程信息可包括:擴展進程 圖標(biāo)、擴展進程名稱其中一項或幾項,其第一資源占用信息可包括擴展進程的帶寬占用、擴 展進程的FPS值、擴展進程的CPU占用率、擴展進程的內(nèi)存占用量其中一項或幾項。
[0148] 步驟430,判斷所述第一資源占用信息是否大于第一閾值;
[0149] 如果大于,則將對應(yīng)的瀏覽器子進程進行優(yōu)化處理。
[0150] 如果小于,則不將對應(yīng)的瀏覽器子進程進行優(yōu)化處理。
[0151] 優(yōu)選的,所述將對應(yīng)的瀏覽器子進程占用的資源進行優(yōu)化包括:
[0152] 步驟S432,通過攔截所述其他瀏覽器子進程中進行網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臑g覽器子進程 對數(shù)據(jù)傳輸函數(shù)的調(diào)用,以暫停所述瀏覽器子進程的網(wǎng)絡(luò)數(shù)據(jù)的傳輸;
[0153] 和/或,步驟S434,對于所述其他瀏覽器子進程中進行網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臑g覽器子 進程,將非當(dāng)前游戲頁面的瀏覽器子進程進行關(guān)閉。
[0154] 比如某個或者某些非運行當(dāng)前網(wǎng)頁游戲的瀏覽器子進程的帶寬占用量大于某個 閾值,可限制其帶寬的使用量,將帶寬分配給當(dāng)前運行網(wǎng)頁游戲的瀏覽器子進程。當(dāng)某個或 者某些非運行當(dāng)前網(wǎng)頁游戲的瀏覽器子進程的內(nèi)存占用量大于某個閾值,則調(diào)用系統(tǒng)內(nèi)存 清理函數(shù)SetProcessWorkingSetSize清理其空閑的內(nèi)存。當(dāng)某個或者某些非運行當(dāng)前網(wǎng) 頁游戲的瀏覽器子進程的內(nèi)存占用量大于某個閾值,則采用調(diào)用killProcess函數(shù)關(guān)閉該 進程。
[0155] 綜上所述,本實施例所述的一種在瀏覽器中加載工具條的方法,當(dāng)IE內(nèi)核的瀏覽 器的當(dāng)前頁面觸發(fā)頁面加載事件時,通過ΒΗ0加載游戲環(huán)境優(yōu)化工具條。用戶可以通過加 載在IE內(nèi)核的瀏覽器側(cè)的游戲環(huán)境優(yōu)化工具條對所述IE內(nèi)核的瀏覽器中的其他頁面占用 的多余資源進行優(yōu)化操作,不再需要用戶去關(guān)閉或者對其他頁面進行處理即可對當(dāng)前網(wǎng)頁 中對游戲環(huán)境的系統(tǒng)資源進行優(yōu)化。
[0156] 實施例五
[0157] 參照圖5,示出了本發(fā)明第四實施例中一種提高游戲運行速度的方法的流程示意 圖,具體可以包括:
[0158] 步驟510,當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽器輔助對象加 載游戲環(huán)境優(yōu)化工具條;
[0159] 步驟520,通過瀏覽器接口獲取瀏覽器所在計算機系統(tǒng)的當(dāng)前運行的非瀏覽器進 程的第二進程信息及其對應(yīng)的各第二資源占用信息;
[0160] 可選地,瀏覽器所在計算機系統(tǒng)的當(dāng)前運行的非瀏覽器進程的第二進程信息包括 進程的模塊描述等,第二資源占用信息包括進程的CPU占用率、進程的輸入輸出端口占用 量、進程的內(nèi)存占用量、帶寬占用量其中一項或多項。
[0161] 步驟530,將瀏覽器所在計算機系統(tǒng)的當(dāng)前運行的非瀏覽器進程的第二進程信息 中符合預(yù)置資源占用優(yōu)化設(shè)置的進程進行優(yōu)化處理。
[0162] 其中,對于瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程,所述預(yù) 置資源占用優(yōu)化設(shè)置包括第一優(yōu)化設(shè)置和第二優(yōu)化設(shè)置;
[0163] 第一優(yōu)化設(shè)置的判斷條件包括以下一個或多個:判斷瀏覽器所在計算機系統(tǒng)當(dāng)前 運行的非瀏覽器進程的第二進程的第二資源占用信息的數(shù)值是否超出預(yù)設(shè)的第二閾值,如 果超出所述第二閾值,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二 進程滿足所述第一優(yōu)化設(shè)置;根據(jù)進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏 覽器進程的第二進程是否出現(xiàn)在前臺的運行進程中,如果沒有出現(xiàn)在所述前臺的運行進程 中,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程滿足所述第一 優(yōu)化設(shè)置,其中,所述前臺的運行進程包括任務(wù)欄上顯示的進程和窗口上顯示的進程;根據(jù) 進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程是否符合預(yù)設(shè) 的黑名單規(guī)則,如果符合,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的 第二進程滿足所述第一優(yōu)化設(shè)置;根據(jù)進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非 瀏覽器進程的第二進程是否符合預(yù)設(shè)的運行條件,如果不符合,則確定所述瀏覽器所在計 算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程滿足所述第一優(yōu)化設(shè)置;第二優(yōu)化設(shè)置的判 斷條件為:當(dāng)瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程不滿足所述第一 優(yōu)化設(shè)置時,判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程是否出現(xiàn)異 常,如果出現(xiàn)異常,則確定所述進程滿足所述第二優(yōu)化設(shè)置,其中,所述異常包括:圖形接口 設(shè)備⑶I泄漏、窗口卡死和CPU卡死。
[0164] 首先,介紹第一優(yōu)化設(shè)置的判斷條件。在本發(fā)明實施例中,該判斷條件可以包括以 下多個條件中的至少一個。
[0165] 條件一,判斷非瀏覽器進程的第二資源占用信息的數(shù)值是否超出預(yù)設(shè)的第二閾 值,如果超出第二閾值,則確定該非瀏覽器進程滿足第一優(yōu)化設(shè)置。
[0166] 對于條件一,第二閾值的具體取值方式可以參考上述對于第一閾值的取值方式, 在此不再贅述。
[0167] 條件二,根據(jù)進程信息判斷非瀏覽器進程是否出現(xiàn)在前臺的運行進程中,如果沒 有出現(xiàn)在前臺的運行進程中,則確定該非瀏覽器進程滿足第一優(yōu)化設(shè)置,其中,前臺的運行 進程包括任務(wù)欄上顯示的進程和窗口上顯示的進程。
[0168] 設(shè)置該條件二的原因在于,通常情況下,如果當(dāng)前正在運行的非瀏覽器進程并未 出現(xiàn)在前臺的運行進程中,則說明該非瀏覽器進程當(dāng)前并未被用戶使用,因而該非瀏覽器 進程很可能是不需要運行的進程。
[0169] 具體地,當(dāng)前臺的非瀏覽器進程為窗口上顯示的進程時,預(yù)置資源占用優(yōu)化設(shè)置 還包括:當(dāng)窗口上顯示的非瀏覽器進程的使用頻率低于預(yù)設(shè)值時,進一步判斷該非瀏覽器 進程在窗口中是否置頂,如果判斷結(jié)果為否,則確定該非瀏覽器進程滿足預(yù)置資源占用優(yōu) 化設(shè)置。
[0170] 條件三,根據(jù)進程信息判斷非瀏覽器進程是否符合預(yù)設(shè)的黑名單規(guī)則,如果符合, 則確定該非瀏覽器進程滿足第一優(yōu)化設(shè)置。
[0171] 其中,在進行條件三的判斷之前,預(yù)先設(shè)置有黑名單規(guī)則,當(dāng)進程符合預(yù)設(shè)的黑名 單規(guī)則時,則確定該非瀏覽器進程符合第一優(yōu)化設(shè)置。具體地,黑名單規(guī)則主要用來定義一 些用戶不希望打開的進程的規(guī)則。例如,有些進程會自動地彈出廣告窗口,這些自動彈出的 廣告窗口往往并不是用戶希望看到的,因而對用戶造成了不必要的打擾,為此,可以在黑名 單規(guī)則中設(shè)置常見的廣告窗口所滿足的規(guī)則,例如,窗口的大小、標(biāo)題及屬性等特征,當(dāng)彈 出的窗口滿足這些特征時,就可以確定該窗口為廣告窗口,從而將其對應(yīng)的進程判斷為符 合第一優(yōu)化設(shè)置。
[0172] 條件四,根據(jù)進程信息判斷非瀏覽器進程是否符合預(yù)設(shè)的運行條件,如果不符合, 則確定該非瀏覽器進程滿足第一優(yōu)化設(shè)置。
[0173] 其中,有些進程在運行時必須符合一定的運行條件才可以正常運行,如果運行條 件不符合,則該進程即使處于運行狀態(tài)也無法正常使用,對于這種由于運行條件不符合而 無法正常使用的進程,可以對其進行優(yōu)化(例如關(guān)閉)。例如,有些進程之間存在相互依賴 關(guān)系,如進程A必須依賴進程B才能運行,因此,當(dāng)檢測到進程A正在運行時,可以進一步檢 測進程B是否正在運行,如果檢測結(jié)果為否,則可以確定進程A的運行條件不符合,從而對 其進行優(yōu)化處理。
[0174] 進一步,對第二優(yōu)化設(shè)置的判斷條件進行說明。并且,通常在非瀏覽器進程不滿足 第一優(yōu)化設(shè)置時,對其進行第二優(yōu)化設(shè)置的判斷。
[0175] 優(yōu)選的,第二優(yōu)化設(shè)置的判斷標(biāo)準(zhǔn)可以為:當(dāng)非瀏覽器進程不滿足第一優(yōu)化設(shè)置 時,判斷非瀏覽器進程是否出現(xiàn)異常,如果出現(xiàn)異常,則確定進程滿足第二優(yōu)化設(shè)置,其中, 異常包括:⑶I泄漏、窗口卡死和CPU卡死。
[0176] 設(shè)置第二優(yōu)化設(shè)置的目的是在于,當(dāng)系統(tǒng)中存在異常的非瀏覽器進程時,會影響 瀏覽器的運行速度,嚴(yán)重時則可能導(dǎo)致瀏覽器的卡崩。所以當(dāng)非瀏覽器進程不符合第一優(yōu) 化設(shè)置的條件時,繼續(xù)判斷其是否存在異常,這樣,能夠避免遺漏掉任何一個可能導(dǎo)致瀏覽 器運行速慢的非瀏覽器進程。
[0177] 當(dāng)需要進行系統(tǒng)優(yōu)化時,可以根據(jù)不同的類別的特點執(zhí)行相應(yīng)的優(yōu)化處理。例如, 以"優(yōu)化系統(tǒng)資源"的類別為例來說,當(dāng)進行系統(tǒng)優(yōu)化時,通過該類別主要完成內(nèi)存釋放以 及優(yōu)化系統(tǒng)速度這兩項任務(wù)。其中,內(nèi)存釋放主要是通過將當(dāng)前正在運行的進程從物理內(nèi) 存中導(dǎo)入到虛擬內(nèi)存中來實現(xiàn)的,具體的導(dǎo)入過程可通過調(diào)用windows系統(tǒng)提供的接口函 數(shù)(例如SetProcessWorkingSetSize接口函數(shù))來實現(xiàn),通過將正在運行的進程從物理內(nèi) 存導(dǎo)入到虛擬內(nèi)存,可以釋放物理存儲空間,降低內(nèi)存占用率。優(yōu)化系統(tǒng)速度主要是通過合 理地設(shè)置系統(tǒng)相關(guān)參數(shù)來實現(xiàn)的。在優(yōu)化系統(tǒng)速度時可從下面幾方面執(zhí)行優(yōu)化。首先,對于 系統(tǒng)穩(wěn)定與系統(tǒng)速度方面,可執(zhí)行如下優(yōu)化處理:1)優(yōu)化處理器資源分配:通過合理地配 置處理器的資源,可以使用戶在玩游戲時獲得更多的CPU、內(nèi)存等資源,使延遲更小,非常適 合反恐類游戲。2)優(yōu)化內(nèi)存配置:通過合理地配置內(nèi)存,能夠增加游戲程序的磁盤緩沖,提 高讀寫速度,加快副本、場景的加載速度。3)優(yōu)化進程反應(yīng)時間:通過合理地設(shè)置程序的反 應(yīng)時間,能夠防止進程在關(guān)閉時假死,使關(guān)機速度更快。4)縮短鼠標(biāo)鍵盤無反應(yīng)等待時間: 由于程序卡死時鼠標(biāo)鍵盤無法移動,因此,通過縮短鼠標(biāo)鍵盤的無反應(yīng)等待時間,可以縮短 進程卡死的時間。
[0178] 上述各實施例的步驟可以根據(jù)實際情況互相組合,本發(fā)明不對其加以限制。
[0179] 實施例六
[0180] 參照圖6,示出了本發(fā)明第六實施例中一種提高游戲運行速度的裝置的結(jié)構(gòu)示意 圖,具體可以包括:
[0181] 優(yōu)化加載模塊610,適于當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽 器輔助對象加載游戲環(huán)境優(yōu)化工具條;
[0182] 優(yōu)化模塊620,適于依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資 源的優(yōu)化處理。
[0183] 實施例七
[0184] 參照圖7,示出了本發(fā)明第七實施例中一種提高游戲運行速度的裝置的結(jié)構(gòu)示意 圖,具體可以包括:
[0185] 優(yōu)化加載模塊710,適于當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽 器輔助對象加載游戲環(huán)境優(yōu)化工具條;所述優(yōu)化加載模塊710包括
[0186] 生成模塊711,適于當(dāng)IE內(nèi)核的瀏覽器的當(dāng)前頁面觸發(fā)頁面加載事件時,生成消 息通知;其中,所述消息通知中攜帶有所述頁面加載事件信息;
[0187] 發(fā)送模塊712,適于在預(yù)置函數(shù)的指示下,將所述消息通知通過所述IE內(nèi)核的瀏 覽器中的設(shè)定接口發(fā)送至獨立于瀏覽器的應(yīng)用程序;
[0188] 接收模塊713,適于接收所述獨立于瀏覽器的應(yīng)用程序返回的調(diào)用請求;所述調(diào) 用請求為當(dāng)所述獨立于瀏覽器的應(yīng)用程序判斷所述頁面加載事件為游戲頁面加載事件時 返回;
[0189] 調(diào)用加載模塊714,適于響應(yīng)所述調(diào)用請求,調(diào)用動態(tài)鏈接庫,并通過所述動態(tài)鏈 接庫在所述IE內(nèi)核的瀏覽器中加載游戲環(huán)境優(yōu)化工具條;
[0190] 其中,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立于瀏覽器的應(yīng)用程序通過瀏覽 器輔助對象注入所述IE內(nèi)核的瀏覽器,以使所述IE內(nèi)核的瀏覽器獲取并加載所述預(yù)置函 數(shù)和所述動態(tài)鏈接庫。
[0191] 優(yōu)化模塊720,適于依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資 源的優(yōu)化處理。
[0192] 所述頁面加載事件信息包括:所述當(dāng)前頁面的統(tǒng)一資源定位符URL和標(biāo)題。
[0193] 優(yōu)選的,所述裝置還包括:
[0194] 狀態(tài)確定模塊,適于在所述生成模塊生成消息通知之后,確定所述當(dāng)前頁面的加 載狀態(tài);其中,所述加載狀態(tài)包括:加載請求狀態(tài)、訪問完成狀態(tài)、文檔建立狀態(tài)和頁面加 載完成狀態(tài)。
[0195] 優(yōu)選的,所述發(fā)送模塊712,具體適于在確定所述當(dāng)前頁面的加載狀態(tài)為訪問完成 狀態(tài)時,在預(yù)置函數(shù)的指示下,將所述消息通知通過所述IE內(nèi)核的瀏覽器中的設(shè)定接口發(fā) 送至第三方應(yīng)用。
[0196] 優(yōu)選的,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由網(wǎng)盾通過瀏覽器輔助對象注入所述IE 內(nèi)核的瀏覽器。
[0197] 優(yōu)選的,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立于瀏覽器的應(yīng)用程序通過瀏 覽器輔助對象注入至所述IE內(nèi)核的瀏覽器的主進程中。
[0198] 實施例八
[0199] 參照圖8,示出了本發(fā)明第八實施例中一種提高游戲運行速度的裝置的結(jié)構(gòu)示意 圖,具體可以包括:
[0200] 優(yōu)化加載模塊810,適于當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽 器輔助對象加載游戲環(huán)境優(yōu)化工具條;
[0201] 優(yōu)化模塊820,適于依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資 源的優(yōu)化處理,所述優(yōu)化模塊820包括:
[0202] 系統(tǒng)進程查詢模塊821,適于依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),查找 瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程;
[0203] 匹配清理模塊822,適于將所述當(dāng)前運行進程與進程清理白名單匹配;對于未匹 配上的進程,則調(diào)用系統(tǒng)內(nèi)存清理函數(shù)SetProcessWorkingSetSize清理各運行的進程占 用的閑置的內(nèi)存;對于匹配上的進程,則不清理該進程的占用的內(nèi)存。
[0204] 優(yōu)選的,還包括:名單更新模塊,適于所述進程清理白名單根據(jù)用戶的反饋數(shù)據(jù)進 行更新。
[0205] 實施例九
[0206] 參照圖9,示出了本發(fā)明第九實施例中一種提高游戲運行速度的裝置的結(jié)構(gòu)示意 圖,具體可以包括:
[0207] 優(yōu)化加載模塊910,適于當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽 器輔助對象加載游戲環(huán)境優(yōu)化工具條;
[0208] 優(yōu)化模塊920,適于依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資 源的優(yōu)化處理,所述優(yōu)化模塊920包括:
[0209] 瀏覽器子進程獲取模塊921,適于獲取瀏覽器中除了當(dāng)前游戲頁面所在瀏覽器子 進程之外的其他瀏覽器子進程及其對應(yīng)的各第一資源占用信息;
[0210] 瀏覽器子進程判斷處理模塊922,適于判斷所述第一資源占用信息是否大于第一 閾值;如果大于,則將對應(yīng)的瀏覽器子進程進行優(yōu)化處理。
[0211] 優(yōu)選的,第一判斷模塊,通過攔截所述其他瀏覽器子進程中進行網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)?瀏覽器子進程對數(shù)據(jù)傳輸函數(shù)的調(diào)用,以暫停所述瀏覽器子進程的網(wǎng)絡(luò)數(shù)據(jù)的傳輸;
[0212] 和/或,第二判斷模塊,對于所述其他瀏覽器子進程中進行網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臑g覽 器子進程,將非當(dāng)前游戲頁面的瀏覽器子進程進行關(guān)閉。
[0213] 實施例十
[0214] 參照圖10,示出了本發(fā)明第十實施例中一種提高游戲運行速度的裝置的結(jié)構(gòu)示意 圖,具體可以包括:
[0215] 優(yōu)化加載模塊1010,適于當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽 器輔助對象加載游戲環(huán)境優(yōu)化工具條;
[0216] 優(yōu)化模塊1020,適于依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng) 資源的優(yōu)化處理,所述優(yōu)化模塊1020包括:
[0217] 計算機進程獲取模塊1021,適于通過瀏覽器接口獲取瀏覽器所在計算機系統(tǒng)的當(dāng) 前運行的非瀏覽器進程的第二進程信息及其對應(yīng)的各第二資源占用信息;
[0218] 計算機進程優(yōu)化模塊1022,適于將瀏覽器所在計算機系統(tǒng)的當(dāng)前運行的非瀏覽器 進程的第二進程信息中符合預(yù)置資源占用優(yōu)化設(shè)置的進程進行優(yōu)化處理。
[0219] 其中,所述第二資源占用信息至少根據(jù)如下一項信息計算得到:瀏覽器所在計算 機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程的CPU占用率、內(nèi)存占用量、輸入輸出端口占 用量、網(wǎng)絡(luò)吞吐量。
[0220] 其中,對于瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程,所述預(yù) 置資源占用優(yōu)化設(shè)置包括第一優(yōu)化設(shè)置和第二優(yōu)化設(shè)置;
[0221] 第一優(yōu)化設(shè)置的判斷條件包括以下一個或多個:判斷瀏覽器所在計算機系統(tǒng)當(dāng)前 運行的非瀏覽器進程的第二進程的第二資源占用信息的數(shù)值是否超出預(yù)設(shè)的第二閾值,如 果超出所述第二閾值,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二 進程滿足所述第一優(yōu)化設(shè)置;根據(jù)進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏 覽器進程的第二進程是否出現(xiàn)在前臺的運行進程中,如果沒有出現(xiàn)在所述前臺的運行進程 中,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程滿足所述第一 優(yōu)化設(shè)置,其中,所述前臺的運行進程包括任務(wù)欄上顯示的進程和窗口上顯示的進程;根據(jù) 進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程是否符合預(yù)設(shè) 的黑名單規(guī)則,如果符合,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的 第二進程滿足所述第一優(yōu)化設(shè)置;根據(jù)進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非 瀏覽器進程的第二進程是否符合預(yù)設(shè)的運行條件,如果不符合,則確定所述瀏覽器所在計 算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程滿足所述第一優(yōu)化設(shè)置;第二優(yōu)化設(shè)置的判 斷條件為:當(dāng)瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程不滿足所述第一 優(yōu)化設(shè)置時,判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程是否出現(xiàn)異 常,如果出現(xiàn)異常,則確定所述進程滿足所述第二優(yōu)化設(shè)置,其中,所述異常包括:圖形接口 設(shè)備⑶I泄漏、窗口卡死和CPU卡死。
[0222] 對于上述裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單, 相關(guān)之處參見方法實施例的部分說明即可。
[0223] 對于上述裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單, 相關(guān)之處參見方法實施例的部分說明即可。
[0224] 在此提供的算法和顯示不與任何特定計算機、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。 各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求 的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種 編程語言實現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對特定語言所做的描述是為了披露本發(fā) 明的最佳實施方式。
[0225] 在此處所提供的說明書中,說明了大量具體細節(jié)。然而,能夠理解,本發(fā)明的實施 例可以在沒有這些具體細節(jié)的情況下實踐。在一些實例中,并未詳細示出公知的方法、結(jié)構(gòu) 和技術(shù),以便不模糊對本說明書的理解。
[0226] 類似地,應(yīng)當(dāng)理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在 上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施 例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保 護的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面 的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此, 遵循【具體實施方式】的權(quán)利要求書由此明確地并入該【具體實施方式】,其中每個權(quán)利要求本身 都作為本發(fā)明的單獨實施例。
[0227] 本領(lǐng)域那些技術(shù)人員可以理解,可以對實施例中的設(shè)備中的模塊進行自適應(yīng)性地 改變并且把它們設(shè)置在與該實施例不同的一個或多個設(shè)備中??梢园褜嵤├械哪K或單 元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或 子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任 何組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開 的任何方法或者設(shè)備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴 隨的權(quán)利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代 特征來代替。
[0228] 此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實施例包括其它實施例 中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的 范圍之內(nèi)并且形成不同的實施例。例如,在下面的權(quán)利要求書中,所要求保護的實施例的任 意之一都可以以任意的組合方式來使用。
[0229] 本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理器上運行 的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實踐中使用 微處理器或者數(shù)字信號處理器(DSP)來實現(xiàn)根據(jù)本發(fā)明實施例的提高游戲運行諫度的設(shè) 備中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述 的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計算機程序和計算機程序產(chǎn)品)。這 樣的實現(xiàn)本發(fā)明的程序可以存儲在計算機可讀介質(zhì)上,或者可以具有一個或者多個信號的 形式。這樣的信號可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他 形式提供。
[0230] 應(yīng)該注意的是上述實施例對本發(fā)明進行說明而不是對本發(fā)明進行限制,并且本領(lǐng) 域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計出替換實施例。在權(quán)利要求中, 不應(yīng)將位于括號之間的任何參考符號構(gòu)造成對權(quán)利要求的限制。單詞"包含"不排除存在 未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞"一"或"一個"不排除存在多個這 樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計算機來 實現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個可以是通過同一個硬件 項來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為 名稱。
[0231] 本發(fā)明公開了 1、一種提高游戲運行速度的方法,包括:
[0232] 當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽器輔助對象加載游戲環(huán) 境優(yōu)化工具條;
[0233] 依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資源的優(yōu)化處理。
[0234] A2、如A1所述的方法,其特征在于,當(dāng)IE內(nèi)核的瀏覽器進入游戲模式后,通過瀏 覽器輔助對象加載系統(tǒng)優(yōu)化工具包括:
[0235] 當(dāng)IE內(nèi)核的瀏覽器的當(dāng)前頁面觸發(fā)頁面加載事件時,生成消息通知;其中,所述 消息通知中攜帶有所述頁面加載事件信息;
[0236] 在預(yù)置函數(shù)的指示下,將所述消息通知通過所述IE內(nèi)核的瀏覽器中的設(shè)定接口 發(fā)送至獨立于瀏覽器的應(yīng)用程序;
[0237] 接收所述獨立于瀏覽器的應(yīng)用程序返回的調(diào)用請求;所述調(diào)用請求為當(dāng)所述獨立 于瀏覽器的應(yīng)用程序判斷所述頁面加載事件為游戲頁面加載事件時返回;
[0238] 響應(yīng)所述調(diào)用請求,調(diào)用動態(tài)鏈接庫,并通過所述動態(tài)鏈接庫在所述IE內(nèi)核的瀏 覽器中加載游戲環(huán)境優(yōu)化工具條;
[0239] 其中,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立于瀏覽器的應(yīng)用程序通過瀏覽 器輔助對象注入所述IE內(nèi)核的瀏覽器,以使所述IE內(nèi)核的瀏覽器獲取并加載所述預(yù)置函 數(shù)和所述動態(tài)鏈接庫。
[0240] A3、如A2所述的方法,其特征在于,所述頁面加載事件信息包括:所述當(dāng)前頁面的 統(tǒng)一資源定位符URL和標(biāo)題。
[0241] A4、如A1所述的方法,其特征在于,在所述生成消息通知的步驟之后,所述方法還 包括:
[0242] 確定所述當(dāng)前頁面的加載狀態(tài);其中,所述加載狀態(tài)包括:加載請求狀態(tài)、訪問完 成狀態(tài)、文檔建立狀態(tài)和頁面加載完成狀態(tài)。
[0243] A5、如A4所述的方法,其特征在于,所述在預(yù)置函數(shù)的指示下,將所述消息通知通 過所述IE內(nèi)核的瀏覽器中的設(shè)定接口發(fā)送至獨立于瀏覽器的應(yīng)用程序,包括:
[0244] 當(dāng)確定所述當(dāng)前頁面的加載狀態(tài)為訪問完成狀態(tài)時,在預(yù)置函數(shù)的指示下,將所 述消息通知通過所述IE內(nèi)核的瀏覽器中的設(shè)定接口發(fā)送至獨立于瀏覽器的應(yīng)用程序。
[0245] A6、如A2所述的方法,其特征在于,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立 于瀏覽器的應(yīng)用程序通過瀏覽器輔助對象注入所述IE內(nèi)核的瀏覽器,包括:
[0246] 所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由網(wǎng)盾通過瀏覽器輔助對象注入所述IE內(nèi)核的 瀏覽器。
[0247] A7、如A2所述的方法,其特征在于,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立 于瀏覽器的應(yīng)用程序通過瀏覽器輔助對象注入所述IE內(nèi)核的瀏覽器,包括:
[0248] 所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立于瀏覽器的應(yīng)用程序通過瀏覽器輔 助對象注入至所述IE內(nèi)核的瀏覽器的主進程中。
[0249] A8、如A1所述的方法,其特征在于,所述啟動對系統(tǒng)資源的優(yōu)化處理包括:
[0250] 查找所有運行的進程;
[0251] 將所述運行的進程與進程清理白名單匹配;對于未匹配上的進程,則調(diào)用系統(tǒng)內(nèi) 存清理函數(shù)SetProcessWorkingSetSize清理各運行的進程占用的閑置的內(nèi)存;對于匹配 上的進程,則不清理該進程的占用的內(nèi)存。
[0252] A9、如A8所述的方法,其特征在于,所述進程清理白名單根據(jù)用戶的反饋數(shù)據(jù)進 行更新。
[0253] A10、如A1所述的方法,其特征在于,所述啟動對系統(tǒng)資源的優(yōu)化處理包括:
[0254] 獲取瀏覽器中除了當(dāng)前游戲頁面所在瀏覽器子進程之外的其他瀏覽器子進程及 其對應(yīng)的各第一資源占用信息;
[0255] 判斷所述第一資源占用信息是否大于第一閾值;如果大于,則將對應(yīng)的瀏覽器子 進程進行優(yōu)化處理。
[0256] All、如A10所述的方法,其特征在于,所述將對應(yīng)的瀏覽器子進程占用的資源進 行優(yōu)化包括:
[0257] 通過攔截所述其他瀏覽器子進程中進行網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臑g覽器子進程對數(shù)據(jù)傳 輸函數(shù)的調(diào)用,以暫停所述瀏覽器子進程的網(wǎng)絡(luò)數(shù)據(jù)的傳輸;
[0258] 和/或,對于所述其他瀏覽器子進程中進行網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臑g覽器子進程,將非 當(dāng)前游戲頁面的瀏覽器子進程進行關(guān)閉。
[0259] A12、如A1所述的方法,其特征在于,所述啟動對系統(tǒng)資源的優(yōu)化處理包括:
[0260] 通過瀏覽器接口獲取瀏覽器所在計算機系統(tǒng)的當(dāng)前運行的非瀏覽器進程的第二 進程信息及其對應(yīng)的各第二資源占用信息;
[0261] 將瀏覽器所在計算機系統(tǒng)的當(dāng)前運行的非瀏覽器進程的第二進程信息中符合預(yù) 置資源占用優(yōu)化設(shè)置的進程進行優(yōu)化處理。
[0262] A13、如A12所述的方法,其特征在于,所述第二資源占用信息至少根據(jù)如下一項 信息計算得到:瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程的CPU占用 率、內(nèi)存占用量、輸入輸出端口占用量、網(wǎng)絡(luò)吞吐量。
[0263] A14、如A12所述的方法,其特征在于,對于瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非 瀏覽器進程的第二進程,所述預(yù)置資源占用優(yōu)化設(shè)置包括第一優(yōu)化設(shè)置和第二優(yōu)化設(shè)置;
[0264] 第一優(yōu)化設(shè)置的判斷條件包括以下一個或多個:判斷瀏覽器所在計算機系統(tǒng)當(dāng)前 運行的非瀏覽器進程的第二進程的第二資源占用信息的數(shù)值是否超出預(yù)設(shè)的第二閾值,如 果超出所述第二閾值,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二 進程滿足所述第一優(yōu)化設(shè)置;根據(jù)進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏 覽器進程的第二進程是否出現(xiàn)在前臺的運行進程中,如果沒有出現(xiàn)在所述前臺的運行進程 中,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程滿足所述第一 優(yōu)化設(shè)置,其中,所述前臺的運行進程包括任務(wù)欄上顯示的進程和窗口上顯示的進程;根據(jù) 進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程是否符合預(yù)設(shè) 的黑名單規(guī)則,如果符合,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的 第二進程滿足所述第一優(yōu)化設(shè)置;根據(jù)進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非 瀏覽器進程的第二進程是否符合預(yù)設(shè)的運行條件,如果不符合,則確定所述瀏覽器所在計 算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程滿足所述第一優(yōu)化設(shè)置;第二優(yōu)化設(shè)置的判 斷條件為:當(dāng)瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程不滿足所述第一 優(yōu)化設(shè)置時,判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程是否出現(xiàn)異 常,如果出現(xiàn)異常,則確定所述進程滿足所述第二優(yōu)化設(shè)置,其中,所述異常包括:圖形接口 設(shè)備⑶I泄漏、窗口卡死和CPU卡死。
[0265] 本發(fā)明還公開了 B15、一種提高游戲運行速度的裝置,包括:
[0266] 優(yōu)化加載模塊,適于當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽器輔 助對象加載游戲環(huán)境優(yōu)化工具條;
[0267] 優(yōu)化模塊,適于依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資源 的優(yōu)化處理。
[0268] B16、如B15所述的裝置,其特征在于,所述優(yōu)化加載模塊包括:
[0269] 生成模塊,適于當(dāng)IE內(nèi)核的瀏覽器的當(dāng)前頁面觸發(fā)頁面加載事件時,生成消息通 知;其中,所述消息通知中攜帶有所述頁面加載事件信息;
[0270] 發(fā)送模塊,適于在預(yù)置函數(shù)的指示下,將所述消息通知通過所述IE內(nèi)核的瀏覽器 中的設(shè)定接口發(fā)送至獨立于瀏覽器的應(yīng)用程序;
[0271] 接收模塊,適于接收所述獨立于瀏覽器的應(yīng)用程序返回的調(diào)用請求;所述調(diào)用 請求為當(dāng)所述獨立于瀏覽器的應(yīng)用程序判斷所述頁面加載事件為游戲頁面加載事件時返 回;
[0272] 調(diào)用加載模塊,適于響應(yīng)所述調(diào)用請求,調(diào)用動態(tài)鏈接庫,并通過所述動態(tài)鏈接庫 在所述IE內(nèi)核的瀏覽器中加載游戲環(huán)境優(yōu)化工具條;
[0273] 其中,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立于瀏覽器的應(yīng)用程序通過瀏覽 器輔助對象注入所述IE內(nèi)核的瀏覽器,以使所述IE內(nèi)核的瀏覽器獲取并加載所述預(yù)置函 數(shù)和所述動態(tài)鏈接庫。
[0274] B17、如B16所述的裝置,其特征在于,所述頁面加載事件信息包括:所述當(dāng)前頁面 的統(tǒng)一資源定位符URL和標(biāo)題。
[0275] B18、如B16所述的裝置,其特征在于,所述裝置還包括:
[0276] 狀態(tài)確定模塊,適于在所述生成模塊生成消息通知之后,確定所述當(dāng)前頁面的加 載狀態(tài);其中,所述加載狀態(tài)包括:加載請求狀態(tài)、訪問完成狀態(tài)、文檔建立狀態(tài)和頁面加 載完成狀態(tài)。
[0277] B19、如B18所述的裝置,其特征在于,
[0278] 所述發(fā)送模塊,具體適于在確定所述當(dāng)前頁面的加載狀態(tài)為訪問完成狀態(tài)時,在 預(yù)置函數(shù)的指示下,將所述消息通知通過所述IE內(nèi)核的瀏覽器中的設(shè)定接口發(fā)送至第三 方應(yīng)用。
[0279] B20、如B16所述的裝置,其特征在于,
[0280] 所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由網(wǎng)盾通過瀏覽器輔助對象注入所述IE內(nèi)核的 瀏覽器。
[0281] B21、如B16所述的裝置,其特征在于,
[0282] 所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立于瀏覽器的應(yīng)用程序通過瀏覽器輔 助對象注入至所述IE內(nèi)核的瀏覽器的主進程中。
[0283] B22、如B15所述的裝置,其特征在于,所述優(yōu)化模塊包括:
[0284] 系統(tǒng)進程查詢模塊,適于查找瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的 第二進程;
[0285] 匹配清理模塊,適于將所述當(dāng)前運行進程與進程清理白名單匹配;對于未匹配上 的進程,則調(diào)用系統(tǒng)內(nèi)存清理函數(shù)SetProcessWorkingSetSize清理各運行的進程占用的 閑置的內(nèi)存;對于匹配上的進程,則不清理該進程的占用的內(nèi)存。
[0286] B23、如B22所述的裝置,其特征在于,還包括:
[0287] 名單更新模塊,適于所述進程清理白名單根據(jù)用戶的反饋數(shù)據(jù)進行更新。
[0288] B24、如B15所述的裝置,其特征在于,所述優(yōu)化模塊包括:
[0289] 瀏覽器子進程獲取模塊,適于獲取瀏覽器中除了當(dāng)前游戲頁面所在瀏覽器子進程 之外的其他瀏覽器子進程及其對應(yīng)的各第一資源占用信息;
[0290] 瀏覽器子進程判斷處理模塊,適于判斷所述第一資源占用信息是否大于第一閾 值;如果大于,則將對應(yīng)的瀏覽器子進程進行優(yōu)化處理。
[0291] B25、如B124所述的裝置,其特征在于,所述瀏覽器子進程判斷處理模塊包括:
[0292] 第一判斷模塊,通過攔截所述其他瀏覽器子進程中進行網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臑g覽器子 進程對數(shù)據(jù)傳輸函數(shù)的調(diào)用,以暫停所述瀏覽器子進程的網(wǎng)絡(luò)數(shù)據(jù)的傳輸;
[0293] 和/或,第二判斷模塊,對于所述其他瀏覽器子進程中進行網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)臑g覽 器子進程,將非當(dāng)前游戲頁面的瀏覽器子進程進行關(guān)閉。
[0294] B26、如B15所述的裝置,其特征在于,所述優(yōu)化模塊包括:
[0295] 計算機進程獲取模塊,適于通過瀏覽器接口獲取瀏覽器所在計算機系統(tǒng)的當(dāng)前運 行的非瀏覽器進程的第二進程信息及其對應(yīng)的各第二資源占用信息;
[0296] 計算機進程優(yōu)化模塊,適于將瀏覽器所在計算機系統(tǒng)的當(dāng)前運行的非瀏覽器進程 的第二進程信息中符合預(yù)置資源占用優(yōu)化設(shè)置的進程進行優(yōu)化處理。
[0297] B27、如B26所述的裝置,其特征在于,所述第二資源占用信息至少根據(jù)如下一項 信息計算得到:瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程的CPU占用 率、內(nèi)存占用量、輸入輸出端口占用量、網(wǎng)絡(luò)吞吐量。
[0298] B28、如B26所述的裝置,其特征在于,對于瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非 瀏覽器進程的第二進程,所述預(yù)置資源占用優(yōu)化設(shè)置包括第一優(yōu)化設(shè)置和第二優(yōu)化設(shè)置;
[0299] 第一優(yōu)化設(shè)置的判斷條件包括以下一個或多個:判斷瀏覽器所在計算機系統(tǒng)當(dāng)前 運行的非瀏覽器進程的第二進程的第二資源占用信息的數(shù)值是否超出預(yù)設(shè)的第二閾值,如 果超出所述第二閾值,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二 進程滿足所述第一優(yōu)化設(shè)置;根據(jù)進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏 覽器進程的第二進程是否出現(xiàn)在前臺的運行進程中,如果沒有出現(xiàn)在所述前臺的運行進程 中,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程滿足所述第一 優(yōu)化設(shè)置,其中,所述前臺的運行進程包括任務(wù)欄上顯示的進程和窗口上顯示的進程;根據(jù) 進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程是否符合預(yù)設(shè) 的黑名單規(guī)則,如果符合,則確定所述瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的 第二進程滿足所述第一優(yōu)化設(shè)置;根據(jù)進程信息判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非 瀏覽器進程的第二進程是否符合預(yù)設(shè)的運行條件,如果不符合,則確定所述瀏覽器所在計 算機系統(tǒng)當(dāng)前運行的非瀏覽器進程的第二進程滿足所述第一優(yōu)化設(shè)置;
[〇3〇〇] 第二優(yōu)化設(shè)置的判斷條件為:當(dāng)瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器進程 的第二進程不滿足所述第一優(yōu)化設(shè)置時,判斷瀏覽器所在計算機系統(tǒng)當(dāng)前運行的非瀏覽器 進程的第二進程是否出現(xiàn)異常,如果出現(xiàn)異常,則確定所述進程滿足所述第二優(yōu)化設(shè)置,其 中,所述異常包括:圖形接口設(shè)備⑶I泄漏、窗口卡死和CPU卡死。
【權(quán)利要求】
1. 一種提高游戲運行速度的方法,包括: 當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽器輔助對象加載游戲環(huán)境優(yōu) 化工具條; 依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資源的優(yōu)化處理。
2. 如權(quán)利要求1所述的方法,其特征在于,當(dāng)IE內(nèi)核的瀏覽器進入游戲模式后,通過 瀏覽器輔助對象加載系統(tǒng)優(yōu)化工具包括: 當(dāng)IE內(nèi)核的瀏覽器的當(dāng)前頁面觸發(fā)頁面加載事件時,生成消息通知;其中,所述消息 通知中攜帶有所述頁面加載事件信息; 在預(yù)置函數(shù)的指示下,將所述消息通知通過所述IE內(nèi)核的瀏覽器中的設(shè)定接口發(fā)送 至獨立于瀏覽器的應(yīng)用程序; 接收所述獨立于瀏覽器的應(yīng)用程序返回的調(diào)用請求;所述調(diào)用請求為當(dāng)所述獨立于瀏 覽器的應(yīng)用程序判斷所述頁面加載事件為游戲頁面加載事件時返回; 響應(yīng)所述調(diào)用請求,調(diào)用動態(tài)鏈接庫,并通過所述動態(tài)鏈接庫在所述IE內(nèi)核的瀏覽器 中加載游戲環(huán)境優(yōu)化工具條; 其中,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立于瀏覽器的應(yīng)用程序通過瀏覽器輔 助對象注入所述IE內(nèi)核的瀏覽器,以使所述IE內(nèi)核的瀏覽器獲取并加載所述預(yù)置函數(shù)和 所述動態(tài)鏈接庫。
3. 如權(quán)利要求2所述的方法,其特征在于,所述頁面加載事件信息包括:所述當(dāng)前頁面 的統(tǒng)一資源定位符URL和標(biāo)題。
4. 如權(quán)利要求1所述的方法,其特征在于,在所述生成消息通知的步驟之后,所述方法 還包括: 確定所述當(dāng)前頁面的加載狀態(tài);其中,所述加載狀態(tài)包括:加載請求狀態(tài)、訪問完成狀 態(tài)、文檔建立狀態(tài)和頁面加載完成狀態(tài)。
5. 如權(quán)利要求4所述的方法,其特征在于,所述在預(yù)置函數(shù)的指示下,將所述消息通知 通過所述IE內(nèi)核的瀏覽器中的設(shè)定接口發(fā)送至獨立于瀏覽器的應(yīng)用程序,包括: 當(dāng)確定所述當(dāng)前頁面的加載狀態(tài)為訪問完成狀態(tài)時,在預(yù)置函數(shù)的指示下,將所述消 息通知通過所述IE內(nèi)核的瀏覽器中的設(shè)定接口發(fā)送至獨立于瀏覽器的應(yīng)用程序。
6. 如權(quán)利要求2所述的方法,其特征在于,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨 立于瀏覽器的應(yīng)用程序通過瀏覽器輔助對象注入所述IE內(nèi)核的瀏覽器,包括: 所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由網(wǎng)盾通過瀏覽器輔助對象注入所述IE內(nèi)核的瀏覽 器。
7. 如權(quán)利要求2所述的方法,其特征在于,所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨 立于瀏覽器的應(yīng)用程序通過瀏覽器輔助對象注入所述IE內(nèi)核的瀏覽器,包括: 所述預(yù)置函數(shù)和所述動態(tài)鏈接庫由所述獨立于瀏覽器的應(yīng)用程序通過瀏覽器輔助對 象注入至所述IE內(nèi)核的瀏覽器的主進程中。
8. 如權(quán)利要求1所述的方法,其特征在于,所述啟動對系統(tǒng)資源的優(yōu)化處理包括: 查找所有運行的進程; 將所述運行的進程與進程清理白名單匹配;對于未匹配上的進程,則調(diào)用系統(tǒng)內(nèi)存清 理函數(shù)SetProcessWorkingSetSize清理各運行的進程占用的閑置的內(nèi)存;對于匹配上的 進程,則不清理該進程的占用的內(nèi)存。
9. 如權(quán)利要求8所述的方法,其特征在于,所述進程清理白名單根據(jù)用戶的反饋數(shù)據(jù) 進行更新。
10. -種提高游戲運行速度的裝置,包括: 優(yōu)化加載模塊,適于當(dāng)IE內(nèi)核的瀏覽器觸發(fā)游戲頁面加載事件后,通過瀏覽器輔助對 象加載游戲環(huán)境優(yōu)化工具條; 優(yōu)化模塊,適于依據(jù)用戶的對所述游戲環(huán)境優(yōu)化工具條的觸發(fā),啟動對系統(tǒng)資源的優(yōu) 化處理。
【文檔編號】G06F9/445GK104111847SQ201410299917
【公開日】2014年10月22日 申請日期:2014年6月26日 優(yōu)先權(quán)日:2014年6月26日
【發(fā)明者】李林, 袁威, 王有存, 張菊元 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司