客戶端的冷啟動方法及裝置制造方法
【專利摘要】本發(fā)明提供一種客戶端的冷啟動方法及裝置。本發(fā)明實施例在接收啟動終端上的客戶端的啟動命令之后,通過利用UI線程,展現(xiàn)所述客戶端的UI框架,進而利用I/O線程,從所述終端的存儲設(shè)備中讀取所述UI框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件,使得能夠利用所述UI線程,運行所述第一可執(zhí)行文件,由于客戶端的冷啟動過程不再只是依賴于單線程即UI線程進行操作,而是利用多線程即UI線程和I/O線程并行進行操作,使得能夠避免現(xiàn)有技術(shù)中由于冷啟動所需要的可執(zhí)行文件較多而導(dǎo)致的利用UI線程,依次讀取冷啟動所需要的可執(zhí)行文件并運行的時間較長的問題,從而提高了客戶端的冷啟動速度。
【專利說明】客戶?而的冷啟動方法及裝直【【技術(shù)領(lǐng)域】】
[0001]本發(fā)明涉及客戶端的啟動技術(shù),尤其涉及一種客戶端的冷啟動方法及裝置。
【【背景技術(shù)】】
[0002]隨著通信技術(shù)的發(fā)展,終端逐漸成為了消費者必不可少的通信和娛樂工具。為了滿足消費者的需求,終端上可以安裝各種各樣的應(yīng)用程序,例如瀏覽器等。這些應(yīng)用程序所對應(yīng)的客戶端,進行冷啟動即終端開機之后第一次運行時,利用用戶界面(UserInterface, UI)線程,依次讀取冷啟動所需要的可執(zhí)行文件,并運行。
[0003]然而,由于冷啟動所需要的可執(zhí)行文件較多,使得利用Π線程,依次讀取冷啟動所需要的可執(zhí)行文件并運行的時間較長。這樣,導(dǎo)致了客戶端的冷啟動速度較慢。
【
【發(fā)明內(nèi)容】
】
[0004]本發(fā)明的多個方面提供一種客戶端的冷啟動方法及裝置,用以提高客戶端的冷啟動速度。
[0005]本發(fā)明的一方面,提供一種客戶端的冷啟動方法,包括:
[0006]接收啟動終端上的客戶端的啟動命令;
[0007]利用UI線程,展現(xiàn)所述客戶端的UI框架;
[0008]利用I/O線程,從所述終端的存儲設(shè)備中讀取所述Π框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件;
[0009]利用所述UI線程,運行所述第一可執(zhí)行文件。
[0010]如上所述的方面和任一可能的實現(xiàn)方式,進一步提供一種實現(xiàn)方式,所述利用Π線程,展現(xiàn)所述客戶端的UI框架之后,還包括:
[0011]啟動所述Π線程的消息循環(huán)。
[0012]如上所述的方面和任一可能的實現(xiàn)方式,進一步提供一種實現(xiàn)方式,所述客戶端的啟動頁面包括所述客戶端的主頁、所述客戶端的新標(biāo)簽頁面或所述客戶端上次被關(guān)閉時未關(guān)閉的頁面。
[0013]如上所述的方面和任一可能的實現(xiàn)方式,進一步提供一種實現(xiàn)方式,所述利用I/O線程,從所述終端的存儲設(shè)備中讀取所述Π框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件之后,還包括:
[0014]利用所述Π線程,從所述終端的存儲設(shè)備讀取所述Π框架中與所述客戶端的啟動頁面無關(guān)功能的第二可執(zhí)行文件;
[0015]利用所述Π線程,運行所述第二可執(zhí)行文件。
[0016]本發(fā)明的另一方面,提供一種客戶端的冷啟動裝置,包括:
[0017]接收單元,用于接收啟動終端上的客戶端的啟動命令;
[0018]框架單元,用于利用UI線程,展現(xiàn)所述客戶端的UI框架;
[0019]讀取單元,用于利用I/O線程,從所述終端的存儲設(shè)備中讀取所述Π框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件;
[0020]運行單元,用于利用所述Π線程,運行所述第一可執(zhí)行文件。
[0021]如上所述的方面和任一可能的實現(xiàn)方式,進一步提供一種實現(xiàn)方式,所述框架單元,還用于
[0022]啟動所述UI線程的消息循環(huán)。
[0023]如上所述的方面和任一可能的實現(xiàn)方式,進一步提供一種實現(xiàn)方式,所述客戶端的啟動頁面包括所述客戶端的主頁、所述客戶端的新標(biāo)簽頁面或所述客戶端上次被關(guān)閉時未關(guān)閉的頁面。
[0024]如上所述的方面和任一可能的實現(xiàn)方式,進一步提供一種實現(xiàn)方式,
[0025]所述讀取單元,還用于
[0026]利用所述Π線程,從所述終端的存儲設(shè)備讀取所述Π框架中與所述客戶端的啟動頁面無關(guān)功能的第二可執(zhí)行文件;
[0027]所述運行單元,還用于
[0028]利用所述UI線程,運行所述第二可執(zhí)行文件。
[0029]由上述技術(shù)方案可知,本發(fā)明實施例在接收啟動終端上的客戶端的啟動命令之后,通過利用UI線程,展 現(xiàn)所述客戶端的Π框架,進而利用I/O線程,從所述終端的存儲設(shè)備中讀取所述UI框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件,使得能夠利用所述Π線程,運行所述第一可執(zhí)行文件,由于客戶端的冷啟動過程不再只是依賴于單線程即UI線程進行操作,而是利用多線程即UI線程和I/O線程并行進行操作,使得能夠避免現(xiàn)有技術(shù)中由于冷啟動所需要的可執(zhí)行文件較多而導(dǎo)致的利用UI線程,依次讀取冷啟動所需要的可執(zhí)行文件并運行的時間較長的問題,從而提高了客戶端的冷啟動速度。
[0030]另外,采用本發(fā)明提供的技術(shù)方案,由于客戶端的冷啟動過程不再只是依賴于單線程即UI線程進行操作,而是利用多線程即UI線程和I/O線程并行進行操作,使得客戶端的冷啟動速度有所提聞,因此,能夠有效提聞終端的利用率。
[0031]另外,采用本發(fā)明提供的技術(shù)方案,由于客戶端的冷啟動過程不再只是依賴于單線程即UI線程進行操作,因此,能夠有效避免客戶端的冷啟動過程中出現(xiàn)卡死現(xiàn)象。
[0032]另外,采用本發(fā)明提供的技術(shù)方案,由于客戶端的冷啟動過程不再只是依賴于單線程即Π線程進行操作,而是利用多線程即Π線程和I/O線程并行進行操作,因此,能夠有效提聞終端的資源利用率。
[0033]另外,采用本發(fā)明提供的技術(shù)方案,由于在客戶端的Π框架展現(xiàn)完成之后,啟動所述Π線程的消息循環(huán),使得無需等待更長的時間即能響應(yīng)用戶操作,因此,能夠有效提高客戶端的操作效率。
【【專利附圖】
【附圖說明】】
[0034]為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0035]圖1為本發(fā)明一實施例提供的客戶端的冷啟動方法的流程示意圖;[0036]圖2為本發(fā)明另一實施例提供的客戶端的冷啟動裝置的結(jié)構(gòu)示意圖。
【【具體實施方式】】
[0037]為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的全部其他實施例,都屬于本發(fā)明保護的范圍。
[0038]可以理解的是,本發(fā)明所涉及的頁面,可以是基于超文本標(biāo)記語言(HyperTextMarkup Language, HTML)編寫的網(wǎng)頁(Web Page),也可以稱為Web頁面。
[0039]需要說明的是,本發(fā)明實施例中所涉及的終端可以包括但不限于手機、個人數(shù)字助理(Personal Digital Assistant, PDA)、無線手持裝置、無線上網(wǎng)本、個人電腦、便攜電腦、個人電腦(Personal Computer, PC)、MP3播放器、MP4播放器等。
[0040]另外,本文中術(shù)語“和/或”,僅僅是一種描述關(guān)聯(lián)對象的關(guān)聯(lián)關(guān)系,表示可以存在三種關(guān)系,例如,A和/或B,可以表示:單獨存在A,同時存在A和B,單獨存在B這三種情況。另外,本文中字符“/”,一般表示前后關(guān)聯(lián)對象是一種“或”的關(guān)系。[0041]圖1為本發(fā)明一實施例提供的客戶端的冷啟動方法的流程示意圖,如圖1所示。
[0042]IO1、接收啟動終端上的客戶端的啟動命令。
[0043]102、利用UI線程,展現(xiàn)所述客戶端的UI框架。
[0044]具體地,Π線程,還可以稱為主線程,具有一個線程應(yīng)該具有的所有特征,例如,有一個線程函數(shù)和一個線程標(biāo)識(ID)等。其中,UI線程的線程函數(shù)中可以創(chuàng)建一種特殊的對象即窗體對象,同時,還一并負(fù)責(zé)創(chuàng)建窗體對象上的各種控件,這些窗體對象和控件就組成了客戶端的UI框架。
[0045]103、利用輸入/輸出(Input/Output, I/O)線程,從所述終端的存儲設(shè)備中讀取所述UI框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件。
[0046]其中,所述終端的存儲設(shè)備可以為電腦的硬盤,或者還可以為手機的內(nèi)存,本實施例對此不進行限定。
[0047]具體地,可以另外啟動一個I/O線程,利用該I/O線程,從所述終端的存儲設(shè)備中讀取所述Π框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件。
[0048]可選地,在本實施例的一個可能的實現(xiàn)方式中,所述客戶端的啟動頁面可以包括但不限于所述客戶端的主頁、所述客戶端的新標(biāo)簽頁面或所述客戶端上次被關(guān)閉時未關(guān)閉的頁面,本實施例對此不進行特別限定。
[0049]其中,頁面,可以是基于超文本標(biāo)記語言(HyperText Markup Language, HTML)編寫的網(wǎng)頁(Web Page),也可以稱為Web頁面。Web頁面可以包括由一個或者多個頁面標(biāo)簽即超文本標(biāo)記語言(HyperText Markup Language,HTML)標(biāo)簽組成的一個顯示區(qū)塊,稱為頁面元素,例如,文字、標(biāo)簽、超鏈接、按鈕、輸入框、下拉框等。
[0050]可選地,在本實施例的一個可能的實現(xiàn)方式中,與所述客戶端的啟動頁面相關(guān)功能,可以為UI框架的主要邏輯,例如,UI框架的頁面刷新功能、Π框架的頁面停止功能、以及UI框架的地址欄顯示功能等,本實施例對此不進行特別限定。
[0051]104、利用所述Π線程,運行所述第一可執(zhí)行文件。[0052]需要說明的是,101?104的執(zhí)行主體可以是啟動裝置,可以位于本地的客戶端中,以進行客戶端的離線啟動或在線啟動。
[0053]可以理解的是,所述客戶端可以是安裝在終端上的應(yīng)用程序,例如,瀏覽器等,只要能夠?qū)崿F(xiàn)用戶的業(yè)務(wù)需求的客觀存在形式都可以,本實施例對此不進行特別限定。
[0054]這樣,在接收啟動終端上的客戶端的啟動命令之后,通過利用UI線程,展現(xiàn)所述客戶端的UI框架,進而利用I/O線程,從所述終端的存儲設(shè)備中讀取所述UI框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件,使得能夠利用所述Π線程,運行所述第一可執(zhí)行文件,由于客戶端的冷啟動過程不再只是依賴于單線程即UI線程進行操作,而是利用多線程即Π線程和I/O線程并行進行操作,使得能夠避免現(xiàn)有技術(shù)中由于冷啟動所需要的可執(zhí)行文件較多而導(dǎo)致的利用UI線程,依次讀取冷啟動所需要的可執(zhí)行文件并運行的時間較長的問題,從而提高了客戶端的冷啟動速度。
[0055]可選地,在本實施例的一個可能的實現(xiàn)方式中,在102中,啟動裝置具體可以利用UI線程,從所述終端的存儲設(shè)備中讀取所述Π框架中與所述Π框架的展現(xiàn)操作相關(guān)功能的可執(zhí)行文件,繼而,利用該Π線程,運行所讀取的所述Π框架中與所述框架的展現(xiàn)操作相關(guān)功能的可執(zhí)行文件。其中,與所述Π框架的展現(xiàn)操作相關(guān)功能,可以為UI框架的基本邏輯,例如,所述Π框架的大小、位置,以及Π元素的配置信息等,本實施例對此不進行特別限定。
[0056]可選地,在本實施例的一個可能的實現(xiàn)方式中,在102之后,啟動裝置還可以進一步啟動所述Π線程的消息循環(huán),以響應(yīng)當(dāng)前能夠支持的用戶操作。例如,π框架的最小化操作、Π框架的最大化操作、以及移動UI框架的位置等用戶操作。
[0057]具體地,可以每次從Π線程所對應(yīng)的消息隊列中取出一條消息,然后根據(jù)消息所包含的信息,將其轉(zhuǎn)發(fā)給特定的窗體對象,此窗體對象所對應(yīng)的窗體過程函數(shù)被調(diào)用,以處理這些消息。詳細(xì)描述可以參見現(xiàn)有技術(shù)中UI線程的消息循環(huán)的相關(guān)內(nèi)容,此處不再贅述。
[0058]這樣,由于在客戶端的Π框架展現(xiàn)完成之后,啟動所述Π線程的消息循環(huán),使得無需等待更長的時間即能響應(yīng)用戶操作,因此,能夠有效提高客戶端的操作效率。
[0059]可選地,在本實施例的一個可能的實現(xiàn)方式中,啟動裝置執(zhí)行完畢103之后,開始執(zhí)行104的方法有很多。例如,I/O線程向Π線程發(fā)送通知事件,以通知可執(zhí)行文件讀取完畢,UI線程接收到通知事件之后,即開始執(zhí)行相應(yīng)操作,即運行所述第一可執(zhí)行文件;或者,再例如,I/O線程設(shè)置全局標(biāo)識,用以表示可執(zhí)行文件讀取完畢,UI線程檢測到該全局標(biāo)識,即開始執(zhí)行相應(yīng)操作,即運行所述第一可執(zhí)行文件,本實施例對此不進行特別限定。
[0060]至此,可以認(rèn)為客戶端的冷啟動過程基本完成,用戶可以利用終端運行的客戶端執(zhí)行與該客戶端的啟動頁面相關(guān)功能的操作,例如,瀏覽啟動頁面,或者,再例如,在啟動頁面中點擊超鏈接等。
[0061]可選地,在本實施例的一個可能的實現(xiàn)方式中,在103之后,啟動裝置還可以進一步利用所述Π線程,從所述終端的存儲設(shè)備讀取所述Π框架中與所述客戶端的啟動頁面無關(guān)功能的第二可執(zhí)行文件,進而,再利用所述Π線程,運行所述第二可執(zhí)行文件。
[0062]具體地,與所述客戶端的啟動頁面無關(guān)功能,可以為UI框架的次要邏輯,例如,UI框架的一些附加功能等,本實施例對此不進行特別限定。[0063]本實施例中,在接收啟動終端上的客戶端的啟動命令之后,通過利用Π線程,展現(xiàn)所述客戶端的UI框架,進而利用I/O線程,從所述終端的存儲設(shè)備中讀取所述UI框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件,使得能夠利用所述Π線程,運行所述第一可執(zhí)行文件,由于客戶端的冷啟動過程不再只是依賴于單線程即UI線程進行操作,而是利用多線程即Π線程和I/O線程并行進行操作,使得能夠避免現(xiàn)有技術(shù)中由于冷啟動所需要的可執(zhí)行文件較多而導(dǎo)致的利用UI線程,依次讀取冷啟動所需要的可執(zhí)行文件并運行的時間較長的問題,從而提高了客戶端的冷啟動速度。
[0064]另外,采用本發(fā)明提供的技術(shù)方案,由于客戶端的冷啟動過程不再只是依賴于單線程即UI線程進行操作,而是利用多線程即UI線程和I/O線程并行進行操作,使得客戶端的冷啟動速度有所提聞,因此,能夠有效提聞終端的利用率。
[0065]另外,采用本發(fā)明提供的技術(shù)方案,由于客戶端的冷啟動過程不再只是依賴于單線程即UI線程進行操作,因此,能夠有效避免客戶端的冷啟動過程中出現(xiàn)卡死現(xiàn)象。
[0066]另外,采用本發(fā)明提供的技術(shù)方案,由于客戶端的冷啟動過程不再只是依賴于單線程即Π線程進行操作,而是利用多線程即Π線程和I/O線程并行進行操作,因此,能夠有效提聞終端的資源利用率。
[0067]另外,采用本發(fā)明提供的技術(shù)方案,由于在客戶端的Π框架展現(xiàn)完成之后,啟動所述Π線程的消息循環(huán),使得無需等待更長的時間即能響應(yīng)用戶操作,因此,能夠有效提高客戶端的操作效率。
[0068]需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或者同時進行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。
[0069]在上述實施例中,對各個實施例的描述都各有側(cè)重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關(guān)描述。
[0070]圖2為本發(fā)明另一實施例提供的客戶端的冷啟動裝置的結(jié)構(gòu)示意圖,如圖2所示。本實施例的客戶端的冷啟動裝置可以包括接收單元21、框架單元22、讀取單元23和運行單元24。其中,
[0071]接收單元21,用于接收啟動終端上的客戶端的啟動命令。
[0072]框架單元22,用于利用UI線程,展現(xiàn)所述客戶端的Π框架。
[0073]具體地,Π線程,還可以稱為主線程,具有一個線程應(yīng)該具有的所有特征,例如,有一個線程函數(shù)和一個線程標(biāo)識(ID)等。其中,UI線程的線程函數(shù)中可以創(chuàng)建一種特殊的對象即窗體對象,同時,還一并負(fù)責(zé)創(chuàng)建窗體對象上的各種控件,這些窗體對象和控件就組成了客戶端的Π框架。
[0074]讀取單元23,用于利用I/O線程,從所述終端的存儲設(shè)備中讀取所述Π框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件。
[0075]其中,所述終端的存儲設(shè)備可以為電腦的硬盤,或者還可以為手機的內(nèi)存,本實施例對此不進行限定。
[0076]具體地,所述讀取單元23可以另外啟動一個I/O線程,利用該I/O線程,從所述終端的存儲設(shè)備中讀取所述UI框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件。
[0077]可選地,在本實施例的一個可能的實現(xiàn)方式中,所述客戶端的啟動頁面可以包括但不限于所述客戶端的主頁、所述客戶端的新標(biāo)簽頁面或所述客戶端上次被關(guān)閉時未關(guān)閉的頁面,本實施例對此不進行特別限定。
[0078]其中,頁面,可以是基于超文本標(biāo)記語言(HyperText Markup Language, HTML)編寫的網(wǎng)頁(Web Page),也可以稱為Web頁面。Web頁面可以包括由一個或者多個頁面標(biāo)簽即超文本標(biāo)記語言(HyperText Markup Language,HTML)標(biāo)簽組成的一個顯示區(qū)塊,稱為頁面元素,例如,文字、標(biāo)簽、超鏈接、按鈕、輸入框、下拉框等。
[0079]可選地,在本實施例的一個可能的實現(xiàn)方式中,與所述客戶端的啟動頁面相關(guān)功能,可以為UI框架的主要邏輯,例如,UI框架的頁面刷新功能、Π框架的頁面停止功能、以及UI框架的地址欄顯示功能等,本實施例對此不進行特別限定。
[0080]運行單元24,用于利用所述UI線程,運行所述第一可執(zhí)行文件。
[0081]需要說明的是,本實施例所提供的客戶端的冷啟動裝置,可以位于本地的客戶端中,以進行客戶端的離線啟動或在線啟動。
[0082]可以理解的是,所述客戶端可以是安裝在終端上的應(yīng)用程序,例如,瀏覽器等,只要能夠?qū)崿F(xiàn)用戶的業(yè)務(wù)需求的客觀存在形式都可以,本實施例對此不進行特別限定。
[0083]這樣,在接收單元接收啟動終端上的客戶端的啟動命令之后,通過框架單元利用UI線程,展現(xiàn)所述客戶端的π框架,進而由讀取單元利用I/O線程,從所述終端的存儲設(shè)備中讀取所述UI框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件,使得運行單元能夠利用所述Π線程,運行所述第一可執(zhí)行文件,由于客戶端的冷啟動過程不再只是依賴于單線程即UI線程進行操作,而是利用多線程即UI線程和I/O線程并行進行操作,使得能夠避免現(xiàn)有技術(shù)中由于冷啟動所需要的可執(zhí)行文件較多而導(dǎo)致的利用UI線程,依次讀取冷啟動所需要的可執(zhí)行文件并運行的時間較長的問題,從而提高了客戶端的冷啟動速度。
[0084]可選地,在本實施例的一個可能的實現(xiàn)方式中,所述框架單元22,具體可以利用UI線程,從所述終端的存儲設(shè)備中讀取所述Π框架中與所述Π框架的展現(xiàn)操作相關(guān)功能的可執(zhí)行文件,繼而,利用該Π線程,運行所讀取的所述Π框架中與所述框架的展現(xiàn)操作相關(guān)功能的可執(zhí)行文件。其中,與所述Π框架的展現(xiàn)操作相關(guān)功能,可以為UI框架的基本邏輯,例如,所述Π框架的大小、位置,以及Π元素的配置信息等,本實施例對此不進行特別限定。
[0085]可選地,在本實施例的一個可能的實現(xiàn)方式中,所述框架單元22,還可以進一步用于啟動所述Π線程的消息循環(huán),以響應(yīng)當(dāng)前能夠支持的用戶操作。例如,π框架的最小化操作、Π框架的最大化操作、以及移動Π框架的位置等用戶操作。
[0086]具體地,每次從Π線程所對應(yīng)的消息隊列中取出一條消息,然后根據(jù)消息所包含的信息,將其轉(zhuǎn)發(fā)給特定的窗體對象,此窗體對象所對應(yīng)的窗體過程函數(shù)被調(diào)用,以處理這些消息。詳細(xì)描述可以參見現(xiàn)有技術(shù)中UI線程的消息循環(huán)的相關(guān)內(nèi)容,此處不再贅述。
[0087]這樣,由于所述框架單元22在客戶端的UI框架展現(xiàn)完成之后,啟動所述UI線程的消息循環(huán),使得無需等待更長的時間即能響應(yīng)用戶操作,因此,能夠有效提高客戶端的操作效率。
[0088]可選地,在本實施例的一個可能的實現(xiàn)方式中,讀取單元23執(zhí)行完畢對應(yīng)操作,運行單元24開始執(zhí)行對應(yīng)操作的方法有很多。例如,I/O線程向UI線程發(fā)送通知事件,以通知可執(zhí)行文件讀取完畢,Π線程接收到通知事件之后,即開始執(zhí)行相應(yīng)操作,即運行所述第一可執(zhí)行文件;或者,再例如,I/O線程設(shè)置全局標(biāo)識,用以表示可執(zhí)行文件讀取完畢,UI線程檢測到該全局標(biāo)識,即開始執(zhí)行相應(yīng)操作,即運行所述第一可執(zhí)行文件,本實施例對此不進行特別限定。
[0089]至此,可以認(rèn)為客戶端的冷啟動過程基本完成,用戶可以利用終端運行的客戶端執(zhí)行與該客戶端的啟動頁面相關(guān)功能的操作,例如,瀏覽啟動頁面,或者,再例如,在啟動頁面中點擊超鏈接等。
[0090]可選地,在本實施例的一個可能的實現(xiàn)方式中,所述讀取單元23,還可以進一步用于利用所述Π線程,從所述終端的存儲設(shè)備讀取所述UI框架中與所述客戶端的啟動頁面無關(guān)功能的第二可執(zhí)行文件;相應(yīng)地,所述運行單元24,則可以用于利用所述Π線程,運行所述第二可執(zhí)行文件。
[0091]具體地,與所述客戶端的啟動頁面無關(guān)功能,可以為UI框架的次要邏輯,例如,UI框架的一些附加功能等,本實施例對此不進行特別限定。
[0092]本實施例中,在接收單元接收啟動終端上的客戶端的啟動命令之后,通過框架單元利用UI線程,展現(xiàn)所述客戶端的UI框架,進而由讀取單元利用I/O線程,從所述終端的存儲設(shè)備中讀取所述Π框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件,使得運行單元能夠利用所述Π線程,運行所述第一可執(zhí)行文件,由于客戶端的冷啟動過程不再只是依賴于單線程即UI線程進行操作,而是利用多線程即UI線程和I/O線程并行進行操作,使得能夠避免現(xiàn)有技術(shù)中由于冷啟動所需要的可執(zhí)行文件較多而導(dǎo)致的利用UI線程,依次讀取冷啟動所需要的可執(zhí)行文件并運行的時間較長的問題,從而提高了客戶端的冷啟動速度。
[0093]另外,采用本發(fā)明提供的技術(shù)方案,由于客戶端的冷啟動過程不再只是依賴于單線程即UI線程進行操作,而是利用多線程即UI線程和I/O線程并行進行操作,使得客戶端的冷啟動速度有所提聞,因此,能夠有效提聞終端的利用率。
[0094]另外,采用本發(fā)明提供的技術(shù)方案,由于客戶端的冷啟動過程不再只是依賴于單線程即UI線程進行操作,因此,能夠有效避免客戶端的冷啟動過程中出現(xiàn)卡死現(xiàn)象。
[0095]另外,采用本發(fā)明提供的技術(shù)方案,由于客戶端的冷啟動過程不再只是依賴于單線程即Π線程進行操作,而是利用多線程即Π線程和I/O線程并行進行操作,因此,能夠有效提聞終端的資源利用率。
[0096]另外,采用本發(fā)明提供的技術(shù)方案,由于在客戶端的Π框架展現(xiàn)完成之后,啟動所述Π線程的消息循環(huán),使得無需等待更長的時間即能響應(yīng)用戶操作,因此,能夠有效提高客戶端的操作效率。
[0097]所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng),裝置和單元的具體工作過程,可以參考前述方法實施例中的對應(yīng)過程,在此不再贅述。
[0098]在本發(fā)明所提供的幾個實施例中,應(yīng)該理解到,所揭露的系統(tǒng),裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
[0099]所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
[0100]另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用硬件加軟件功能單元的形式實現(xiàn)。
[0101]上述以軟件功能單元的形式實現(xiàn)的集成的單元,可以存儲在一個計算機可讀取存儲介質(zhì)中。上述軟件功能單元存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)或處理器(processor)執(zhí)行本發(fā)明各個實施例所述方法的部分步驟。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器(Read-Only Memory, ROM)、隨機存取存儲器(Random Access Memory, RAM)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
[0102]最后應(yīng)說明的是:以上實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述實施例對本發(fā)明進行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的精神和范圍。
【權(quán)利要求】
1.一種客戶端的冷啟動方法,其特征在于,包括: 接收啟動終端上的客戶端的啟動命令; 利用UI線程,展現(xiàn)所述客戶端的UI框架; 利用I/o線程,從所述終端的存儲設(shè)備中讀取所述Π框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件; 利用所述UI線程,運行所述第一可執(zhí)行文件。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述利用UI線程,展現(xiàn)所述客戶端的UI框架之后,還包括: 啟動所述UI線程的消息循環(huán)。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述客戶端的啟動頁面包括所述客戶端的主頁、所述客戶端的新標(biāo)簽頁面或所述客戶端上次被關(guān)閉時未關(guān)閉的頁面。
4.根據(jù)權(quán)利要求1?3任一權(quán)利要求所述的方法,其特征在于,所述利用I/O線程,從所述終端的存儲設(shè)備中讀取所述UI框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件之后,還包括: 利用所述Π線程,從所述終端的存儲設(shè)備讀取所述Π框架中與所述客戶端的啟動頁面無關(guān)功能的第二可執(zhí)行文件; 利用所述UI線程,運行所述第二可執(zhí)行文件。
5.一種客戶端的冷啟動裝置,其特征在于,包括: 接收單元,用于接收啟動終端上的客戶端的啟動命令; 框架單元,用于利用UI線程,展現(xiàn)所述客戶端的UI框架; 讀取單元,用于利用I/O線程,從所述終端的存儲設(shè)備中讀取所述Π框架中與所述客戶端的啟動頁面相關(guān)功能的第一可執(zhí)行文件; 運行單元,用于利用所述Π線程,運行所述第一可執(zhí)行文件。
6.根據(jù)權(quán)利要求5所述的裝置,其特征在于,所述框架單元,還用于 啟動所述Π線程的消息循環(huán)。
7.根據(jù)權(quán)利要求5所述的裝置,其特征在于,所述客戶端的啟動頁面包括所述客戶端的主頁、所述客戶端的新標(biāo)簽頁面或所述客戶端上次被關(guān)閉時未關(guān)閉的頁面。
8.根據(jù)權(quán)利要求5?7任一權(quán)利要求所述的裝置,其特征在于, 所述讀取單元,還用于 利用所述Π線程,從所述終端的存儲設(shè)備讀取所述Π框架中與所述客戶端的啟動頁面無關(guān)功能的第二可執(zhí)行文件; 所述運行單元,還用于 利用所述UI線程,運行所述第二可執(zhí)行文件。
【文檔編號】G06F9/445GK103955388SQ201410177921
【公開日】2014年7月30日 申請日期:2014年4月29日 優(yōu)先權(quán)日:2014年4月29日
【發(fā)明者】王廣輝, 錢毅, 倪韶亮 申請人:百度在線網(wǎng)絡(luò)技術(shù)(北京)有限公司