本發(fā)明涉及計算機(jī)移動通信技術(shù)領(lǐng)域,具體而言,涉及一種文件下載方法、裝置及終端設(shè)備。
背景技術(shù):
通過網(wǎng)絡(luò)使用多線程進(jìn)行文件下載時,目標(biāo)文件分為多個分段文件被多個下載線程分別進(jìn)行下載,下載后再合成一個完整的文件。由于系統(tǒng)在多線程調(diào)度運(yùn)行的不確定性,多個下載線程去分別下載對應(yīng)的分段文件時,并不能保證多個下載線程能夠同時完成下載任務(wù)。在網(wǎng)絡(luò)狀況比較差的情況下,多個下載線程完成下載任務(wù)的時間點(diǎn)會相差很大,尤其在cpu性能較差的移動終端設(shè)備上,甚至還會出現(xiàn)一個下載線程還沒開始下載,而另外一個下載線程已經(jīng)完成下載任務(wù)的情況,因此,在網(wǎng)絡(luò)狀況或設(shè)備性能低等情況下,下載速度往往是非常慢的。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種文件下載方法、裝置及終端設(shè)備,可以提高下載速度。
為了實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例采用的技術(shù)方案如下:
第一方面,本發(fā)明實(shí)施例提供了一種文件下載方法,包括:根據(jù)目標(biāo)下載文件的信息,啟動多個分段下載線程,分別下載所述目標(biāo)下載文件的多個分段文件;當(dāng)所述多個分段下載線程中的一個分段下載線程完成下載任務(wù)時,將剩余分段下載線程中未下載內(nèi)容最多的分段下載線程或預(yù)計剩余下載時間最長的分段下載線程作為待協(xié)助分段下載線程;按照預(yù)定比例截取所述待協(xié)助分段下載線程中 未下載內(nèi)容作為尾部片段;啟動所述已完成下載任務(wù)的分段下載線程下載所述尾部片段。
進(jìn)一步的,所述根據(jù)目標(biāo)下載文件的信息,啟動多個分段下載線程,分別下載所述目標(biāo)下載文件的多個分段文件,包括:根據(jù)目標(biāo)下載文件的信息,獲取所述目標(biāo)下載文件的文件大小;對所述目標(biāo)下載文件進(jìn)行文件分段處理,獲得所述目標(biāo)下載文件的多個分段文件;根據(jù)分段文件的數(shù)量分配多個分段下載線程;啟動所述多個分配下載線程分別下載所述多個分段文件。
進(jìn)一步的,所述按照預(yù)定比例截取所述待協(xié)助分段下載線程未下載內(nèi)容的尾部片段之前,還包括:判斷待協(xié)助分段下載線程未下載內(nèi)容的數(shù)據(jù)量是否小于預(yù)設(shè)閾值,如果是,則直接由所述待協(xié)助分段下載線程下載未下載內(nèi)容,否則,執(zhí)行所述按照預(yù)定比例截取所述待協(xié)助分段下載線程中未下載內(nèi)容。
進(jìn)一步的,所述將剩余分段下載線程中未下載內(nèi)容最多的分段下載線程或預(yù)計剩余下載時間最長的分段下載線程作為待協(xié)助分段下載線程之前,還包括:監(jiān)聽所有分段下載線程的下載狀態(tài)以及下載中的分段文件的大小變化;判斷是否有分段下載線程已完成下載任務(wù);如果有分段下載線程已完成下載任務(wù),則判斷是否所有分段下載線程均已完成下載任務(wù),如果沒有完成,則執(zhí)行將剩余分段下載線程中未下載內(nèi)容最多的分段下載線程或預(yù)計剩余下載時間最長的分段下載線程作為待協(xié)助分段下載線程的步驟;如果沒有分段下載線程已完成下載任務(wù),返回監(jiān)聽的步驟。
進(jìn)一步的,所述按照預(yù)定比例截取所述待協(xié)助分段下載線程中未下載內(nèi)容作為尾部片段,包括:將所述待協(xié)助分段下載線程未下 載內(nèi)容按照二分法分為頭部片段和尾部片段;截取所述尾部片段,分配給已完成下載任務(wù)的分段下載線程。
第二方面,本發(fā)明實(shí)施例提供了一種文件下載裝置,所述裝置包括第一啟動模塊,用于根據(jù)目標(biāo)下載文件的信息,啟動多個分段下載線程,分別下載所述目標(biāo)下載文件的多個分段文件;獲取模塊,用于當(dāng)所述多個分段下載線程中的一個分段下載線程完成下載任務(wù)時,將剩余分段下載線程中未下載內(nèi)容最多的分段下載線程或預(yù)計剩余下載時間最長的分段下載線程作為待協(xié)助分段下載線程;截取模塊,用于按照預(yù)定比例截取所述待協(xié)助分段下載線程中未下載內(nèi)容作為尾部片段;第二啟動模塊,用于啟動所述已完成下載任務(wù)的分段下載線程下載所述尾部片段。
第三方面,本發(fā)明實(shí)施例提供了一種終端設(shè)備,包括:存儲器以及處理器,所述存儲器存儲有上述文件下載裝置中的模塊,所述處理器用于運(yùn)行存儲在所述存儲器內(nèi)的模塊。
本發(fā)明實(shí)施例提供的文件下載方法、裝置及終端設(shè)備,通過將其他分段下載線程中未下載內(nèi)容最多的分段下載線程或預(yù)計剩余下載時間最長的分段下載線程作為待協(xié)助分段下載線程,按照預(yù)定比例截取所述待協(xié)助分段下載線程中未下載內(nèi)容作為尾部片段,啟動所述已完成下載任務(wù)的分段下載線程下載所述尾部片段,不斷循環(huán)此過程,直至所有分段文件被下載完畢。由于已完成下載任務(wù)的下載線程可以幫助其他未完成下載任務(wù)的下載線程完成一部分下載任務(wù),因此,整體的文件下載速度提高了。
為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉較佳實(shí)施例,并配合所附附圖,作詳細(xì)說明如下。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對實(shí)施例中所需要使用的附圖作簡單地介紹,應(yīng)當(dāng)理解,以下附圖僅示出了本發(fā)明的某些實(shí)施例,因此不應(yīng)被看作是對范圍的限定,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他相關(guān)的附圖。
圖1示出了本發(fā)明實(shí)施例提供的終端設(shè)備的結(jié)構(gòu)框圖;
圖2示出了本發(fā)明第一實(shí)施例提供的一種文件下載方法的流程示意圖;
圖3示出了本發(fā)明第二實(shí)施例提供的一種文件下載方法的流程示意圖;
圖4示出了本發(fā)明第三實(shí)施例提供的一種文件下載裝置的結(jié)構(gòu)框圖;
圖5示出了本發(fā)明第四實(shí)施例提供的一種文件下載裝置的結(jié)構(gòu)框圖。
具體實(shí)施方式
本發(fā)明實(shí)施例所提供的文件下載方法及裝置可應(yīng)用于用戶終端或服務(wù)器等終端設(shè)備中,例如,可運(yùn)行于如圖1所示的終端設(shè)備100中。
于本發(fā)明實(shí)施例中,終端設(shè)備100優(yōu)選為移動終端設(shè)備,例如可以包括智能手機(jī)、平板電腦、電子書閱讀器、膝上型便攜計算機(jī)、穿戴式移動終端等等。
如圖1所示,終端設(shè)備100包括存儲器102、存儲控制器104,一個或多個(圖中僅示出一個)處理器106、外設(shè)接口108、射頻模塊110、音頻模塊112、觸控屏幕114等。這些組件通過一條或多條通訊總線/信號線116相互通訊。
存儲器102可用于存儲軟件程序以及模塊,如本發(fā)明實(shí)施例中的文件下載方法及裝置對應(yīng)的程序指令/模塊,處理器106通過運(yùn)行存儲在存儲器102內(nèi)的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理,如本發(fā)明實(shí)施例提供的文件下載方法。
存儲器102可包括高速隨機(jī)存儲器,還可包括非易失性存儲器,如一個或者多個磁性存儲裝置、閃存、或者其他非易失性固態(tài)存儲器。處理器106以及其他可能的組件對存儲器102的訪問可在存儲控制器104的控制下進(jìn)行。
外設(shè)接口108將各種輸入/輸入裝置耦合至處理器106以及存儲器102。在一些實(shí)施例中,外設(shè)接口108,處理器106以及存儲控制器104可以在單個芯片中實(shí)現(xiàn)。在其他一些實(shí)例中,他們可以分別由獨(dú)立的芯片實(shí)現(xiàn)。
射頻模塊110用于接收以及發(fā)送電磁波,實(shí)現(xiàn)電磁波與電信號的相互轉(zhuǎn)換,從而與通訊網(wǎng)絡(luò)或者其他設(shè)備進(jìn)行通訊。
音頻模塊112向用戶提供音頻接口,其可包括一個或多個麥克風(fēng)、一個或者多個揚(yáng)聲器以及音頻電路。
觸控屏幕114在終端設(shè)備100與用戶之間同時提供一個輸出及輸入界面。具體地,觸控屏幕114向用戶顯示視頻輸出,這些視頻輸出的內(nèi)容可包括文字、圖形、視頻及其任意組合。
可以理解,圖1所示的結(jié)構(gòu)僅為示意,終端設(shè)備100還可包括比圖1中所示更多或者更少的組件,或者具有與圖1所示不同的配置。圖1中所示的各組件可以采用硬件、軟件或其組合實(shí)現(xiàn)。
于本發(fā)明實(shí)施例中,終端設(shè)備100中安裝有客戶端,該客戶端可以是瀏覽器也可以是第三方應(yīng)用軟件,與服務(wù)器(server)端相對應(yīng),為用戶提供服務(wù),例如將服務(wù)器端的文件下載到終端設(shè)備。
為了提高在網(wǎng)絡(luò)狀況下或者設(shè)備性能較低的下載速度,本發(fā)明實(shí)施例提出一種文件下載方法及裝置,在多個下載線程下載一個目標(biāo)文件的多個分段文件時,當(dāng)其中一個分段下載線程已完成當(dāng)前下載任務(wù)時,將剩余分段下載線程中未下載內(nèi)容最多的分段下載線程或預(yù)計剩余下載時間最長的分段下載線程,將該分段下載線程的未下載部分重新分配給已完成下載任務(wù)的分段下載線程,不斷循環(huán)此過程,直至所有分段文件被下載完畢。由于已完成下載任務(wù)的下載線程可以幫助其他未完成下載任務(wù)的下載線程完成一部分下載任務(wù),因此,整體的文件下載速度提高了。
下面將結(jié)合本發(fā)明實(shí)施例中附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。通常在此處附圖中描述和示出的本發(fā)明實(shí)施例的組件可以以各種不同的配置來布置和設(shè)計。因此,以下對在附圖中提供的本發(fā)明的實(shí)施例的詳細(xì)描述并非旨在限制要求保護(hù)的本發(fā)明的范圍,而是僅僅表示本發(fā)明的選定實(shí)施例?;诒景l(fā)明的實(shí)施例,本領(lǐng)域技術(shù)人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
第一實(shí)施例
圖2示出了本發(fā)明第一實(shí)施例提供的一種文件下載方法的流程圖,請參閱圖2,所述方法包括:
步驟s110,根據(jù)目標(biāo)下載文件的信息,啟動多個分段下載線程,分別下載所述目標(biāo)下載文件的多個分段文件;
在本發(fā)明實(shí)施例中,目標(biāo)下載文件的信息為能夠標(biāo)識目標(biāo)下載文件的信息,以便于下載線程明確下載目標(biāo),可包括目標(biāo)下載文件的大小、文件頭、文件名等信息。為了提高下載速度,可根據(jù)目標(biāo) 下載文件的信息建立多個分段下載線程對具有目標(biāo)下載文件的信息的文件進(jìn)行下載。
步驟s120,當(dāng)所述多個分段下載線程中的一個分段下載線程完成下載任務(wù)時,將剩余分段下載線程中未下載內(nèi)容最多的分段下載線程或預(yù)計剩余下載時間最長的分段下載線程作為待協(xié)助分段下載線程;
將其他分段下載線程中未下載內(nèi)容最多的分段下載線程或預(yù)計剩余下載時間最長的分段下載線程作為待協(xié)助分段下載線程,可由其他已完成下載任務(wù)的分段下載線程對其進(jìn)行協(xié)助下載,使該未下載內(nèi)容更快的完成下載。
步驟s130,按照預(yù)定比例截取所述待協(xié)助分段下載線程中未下載內(nèi)容作為尾部片段;
在本發(fā)明實(shí)施例中,可以根據(jù)待協(xié)助分段下載線程的未下載內(nèi)容的數(shù)據(jù)量與其他其他分段下載線程中未下載內(nèi)容的數(shù)據(jù)量之間的差值確定預(yù)定比例,當(dāng)差值較小時,預(yù)定比例可以較小,當(dāng)差值較大時,預(yù)定比例可以較大。尾部片段指的是按照預(yù)定比例截取待下載內(nèi)容中離下載結(jié)束部分最近的內(nèi)容片段,包括下載結(jié)束部分。
步驟s140,啟動所述已完成下載任務(wù)的分段下載線程下載所述尾部片段。
不斷重復(fù)步驟s120至步驟s140,直至所有分段文件被下載完畢。
本實(shí)施例提供的文件下載方法,通過將其他分段下載線程中未下載內(nèi)容最多的分段下載線程或預(yù)計剩余下載時間最長的分段下載線程作為待協(xié)助分段下載線程,按照預(yù)定比例截取所述待協(xié)助分段下載線程中未下載內(nèi)容作為尾部片段,啟動所述已完成下載任務(wù)的 分段下載線程下載所述尾部片段,不斷循環(huán)此過程,直至所有分段文件被下載完畢。由于已完成下載任務(wù)的下載線程可以幫助其他未完成下載任務(wù)的下載線程完成一部分下載任務(wù),因此,整體的文件下載速度提高了。
第二實(shí)施例
圖3示出了本發(fā)明第二實(shí)施例提供的一種文件下載方法的流程圖。請參閱圖3,所述方法包括:
步驟s201,根據(jù)下載地址創(chuàng)建一個下載任務(wù);
步驟s202,獲取目標(biāo)下載文件的文件大小;
啟動文件下載器線程獲取目標(biāo)下載文件的文件大小,并更新到下載文件數(shù)據(jù)表。
步驟s203,對目標(biāo)下載文件進(jìn)行文件分段處理,獲得所述目標(biāo)下載文件的多個分段文件;
下載裝置可以采用預(yù)定的分段規(guī)則將目標(biāo)下載文件分為多個分段文件,分段文件的個數(shù)不超過預(yù)設(shè)閾值,其中,預(yù)設(shè)閾值可為默認(rèn)數(shù)值或由用戶設(shè)定,以限制下載的線程數(shù)量。在本發(fā)明實(shí)施例中,優(yōu)選的,將目標(biāo)下載文件等分為多個分段文件。當(dāng)然,也可以采用其他分段規(guī)則,本發(fā)明的具體實(shí)施方式并不以此為限。
步驟s204,啟動多個分段下載線程分別下載所述目標(biāo)下載文件的多個分段文件;
文件下載控制器線程根據(jù)分段文件的數(shù)量分配一定數(shù)量的分段下載線程,并創(chuàng)建相對應(yīng)的分段線程數(shù)據(jù)表,然后啟動多個分段下載線程去分別下載目標(biāo)下載文件的這些分段文件。
步驟s205,監(jiān)聽所有分段下載線程的下載狀態(tài)以及下載中的分段文件的大小變化;
文件下載控制器線程不斷循環(huán)監(jiān)聽所有分段下載線程的下載狀態(tài)和下載文件總大小數(shù)據(jù)的變化,更新下載文件數(shù)據(jù)表。
分段下載線程在下載過程中將狀態(tài)改變和下載的分段文件的數(shù)據(jù)的變化回調(diào)通知到文件下載控制器線程,更新相應(yīng)的下載文件數(shù)據(jù)表和分段線程數(shù)據(jù)表。
步驟s206,判斷是否有分段下載線程已完成下載任務(wù),如果是,則執(zhí)行步驟s207,返回步驟s205。
分段下載線程在下載過程中將狀態(tài)變化和下載文件數(shù)據(jù)變化回調(diào)通知到下載控制器線程,更新相應(yīng)的下載文件數(shù)據(jù)表和分段線程數(shù)據(jù)表。下載控制器線程可以根據(jù)通知判斷是否有分段下載線程完成下載任務(wù)。
步驟s207,判斷是否所有分段下載線程均已完成下載任務(wù),如果是,則下載完成,否則執(zhí)行步驟s208。
步驟s208,將剩余分段下載線程中未下載內(nèi)容最多的分段下載線程或預(yù)計剩余下載時間最長的分段下載線程作為待協(xié)助分段下載線程;
當(dāng)其中一條分段下載線程完成當(dāng)前分段下載任務(wù)時,下載控制器線程根據(jù)收到分段線程下載完成狀態(tài)通知,然后去查找其他分段下載線程中未下載內(nèi)容最多的分段下載線程或預(yù)計剩余下載時間最長的分段下載線程。
步驟s209,判斷待協(xié)助分段下載線程未下載內(nèi)容的數(shù)據(jù)量是否小于預(yù)設(shè)閾值,如果是,返回步驟s205,否則,執(zhí)行步驟s210。
步驟s210,按照預(yù)定比例截取所述待協(xié)助分段下載線程中未下載內(nèi)容作為尾部片段;
如果待協(xié)助分段下載線程未下載內(nèi)容的數(shù)據(jù)量小于預(yù)設(shè)閾值時不再切分當(dāng)前下載任務(wù),等待分段下載線程下載完成,否則,將未下載內(nèi)容按照二分法把后面一部分需要下載的文件分配給已完成下載任務(wù)的分段下載線程,添加一條分段下載記錄和更新被切分的分段線程記錄。
步驟s211,啟動所述已完成下載任務(wù)的分段下載線程下載所述尾部片段。
下載文件控制器線程控制監(jiān)聽到所有分段下載線程都是下載完成狀態(tài),則下載文件任務(wù)完成。
第三實(shí)施例
圖4示出了本發(fā)明第三實(shí)施例提供的一種文件下載裝置的結(jié)構(gòu)框圖,請參閱圖4,本實(shí)施例中的裝置可運(yùn)行于終端設(shè)備,本實(shí)施例中的裝置30包括:
第一啟動模塊31,用于根據(jù)目標(biāo)下載文件的信息,啟動多個分段下載線程,分別下載所述目標(biāo)下載文件的多個分段文件;
獲取模塊32,用于當(dāng)所述多個分段下載線程中的一個分段下載線程完成下載任務(wù)時,將剩余分段下載線程中未下載內(nèi)容最多的分段下載線程或預(yù)計剩余下載時間最長的分段下載線程作為待協(xié)助分段下載線程;
截取模塊33,用于按照預(yù)定比例截取所述待協(xié)助分段下載線程中未下載內(nèi)容作為尾部片段;
第二啟動模塊34,用于啟動所述已完成下載任務(wù)的分段下載線程下載所述尾部片段。
本實(shí)施例中的各模塊/單元可以是由軟件代碼實(shí)現(xiàn),此時,上述的各模塊/單元可存儲于終端設(shè)備100的存儲器102內(nèi)。以上各模塊/單元同樣可以由硬件例如集成電路芯片實(shí)現(xiàn)。
第四實(shí)施例
圖5示出了本發(fā)明第四實(shí)施例提供的一種文件下載裝置的結(jié)構(gòu)框圖,請參閱圖5,本實(shí)施例中的裝置可運(yùn)行于終端設(shè)備,本實(shí)施例中的裝置40包括:
第一啟動模塊41,用于根據(jù)目標(biāo)下載文件的信息,啟動多個分段下載線程,分別下載所述目標(biāo)下載文件的多個分段文件;
獲取模塊42,用于當(dāng)所述多個分段下載線程中的一個分段下載線程完成下載任務(wù)時,將剩余分段下載線程中未下載內(nèi)容最多的分段下載線程或預(yù)計剩余下載時間最長的分段下載線程作為待協(xié)助分段下載線程;
截取模塊43,用于按照預(yù)定比例截取所述待協(xié)助分段下載線程中未下載內(nèi)容作為尾部片段;
第二啟動模塊44,用于啟動所述已完成下載任務(wù)的分段下載線程下載所述尾部片段。
于本實(shí)施例中,所述第一啟動模塊41,包括:
信息獲取單元411,用于根據(jù)目標(biāo)下載文件的信息,獲取所述目標(biāo)下載文件的文件大?。?/p>
分段處理單元412,用于對所述目標(biāo)下載文件進(jìn)行文件分段處理,獲得所述目標(biāo)下載文件的多個分段文件;
線程分配單元413,用于根據(jù)分段文件的數(shù)量分配多個分段下載線程;
線程啟動單元414,用于啟動所述多個分配下載線程分別下載所述多個分段文件。
進(jìn)一步的,還包括判斷模塊45,用于判斷待協(xié)助分段下載線程未下載內(nèi)容的數(shù)據(jù)量是否小于預(yù)設(shè)閾值,如果是,則直接由所述待協(xié)助分段下載線程下載未下載內(nèi)容,否則,執(zhí)行所述按照預(yù)定比例截取所述待協(xié)助分段下載線程中未下載內(nèi)容作為尾部片段。
進(jìn)一步的,所述獲取模塊42還用于監(jiān)聽所有分段下載線程的下載狀態(tài)以及下載中的分段文件的大小變化,判斷是否有分段下載線程已完成下載任務(wù),如果有分段下載線程已完成下載任務(wù),則判斷是否所有分段下載線程均已完成下載任務(wù)。
進(jìn)一步的,所述截取模塊43還用于將所述待協(xié)助分段下載線程未下載內(nèi)容按照二分法分為頭部片段和尾部片段,截取所述尾部片段,分配給已完成下載任務(wù)的分段下載線程。
本實(shí)施例中的各模塊/單元可以是由軟件代碼實(shí)現(xiàn),此時,上述的各模塊/單元可存儲于終端設(shè)備100的存儲器102內(nèi)。以上各模塊/單元同樣可以由硬件例如集成電路芯片實(shí)現(xiàn)。
綜上所述,本發(fā)明實(shí)施例提供的文件下載方法及裝置,通過將其他分段下載線程中未下載內(nèi)容最多的分段下載線程或預(yù)計剩余下載時間最長的分段下載線程作為待協(xié)助分段下載線程,按照預(yù)定比例截取所述待協(xié)助分段下載線程中未下載內(nèi)容作為尾部片段,啟動所述已完成下載任務(wù)的分段下載線程下載所述尾部片段,不斷循環(huán)此過程,直至所有分段文件被下載完畢。由于已完成下載任務(wù)的下載線程可以幫助其他未完成下載任務(wù)的下載線程完成一部分下載任務(wù),因此,整體的文件下載速度提高了。
需要說明的是,本說明書中的各個實(shí)施例均采用遞進(jìn)的方式描述,每個實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個實(shí)施例之間相同相似的部分互相參見即可。
本發(fā)明實(shí)施例所提供的文件下載裝置及系統(tǒng),其實(shí)現(xiàn)原理及產(chǎn)生的技術(shù)效果和前述方法實(shí)施例相同,為簡要描述,裝置實(shí)施例部分未提及之處,可參考前述方法實(shí)施例中相應(yīng)內(nèi)容。
另外,附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個實(shí)施例的系統(tǒng)、方法和計算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或動作的專用的基于硬件的系統(tǒng)來實(shí)現(xiàn),或者可以用專用硬件與計算機(jī)指令的組合來實(shí)現(xiàn)。
本發(fā)明實(shí)施例所提供的計算機(jī)程序產(chǎn)品,包括存儲了程序代碼的計算機(jī)可讀存儲介質(zhì),所述程序代碼包括的指令可用于執(zhí)行前面方法實(shí)施例中所述的方法,具體實(shí)現(xiàn)可參見方法實(shí)施例,在此不再贅述。
所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng)、裝置和單元的具體工作過程,可以參考前述方法實(shí)施例中的對應(yīng)過程,在此不再贅述。
在本申請所提供的幾個實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng)、裝置和方法,可以通過其它的方式實(shí)現(xiàn)。以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時可以有另外的劃分方式,又例如,多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些通信接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。
另外,在本發(fā)明各個實(shí)施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨(dú)物理存在,也可以兩個或兩個以上單元集成在一個單元中。
所述功能如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時,可以存儲在一個計算機(jī)可讀取存儲介質(zhì)中。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機(jī)軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機(jī)設(shè)備(可以是個人計算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實(shí)施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:u盤、移動硬盤、只讀存儲器(rom,read-onlymemory)、 隨機(jī)存取存儲器(ram,randomaccessmemory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實(shí)體或者操作與另一個實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。應(yīng)注意到:相似的標(biāo)號和字母在下面的附圖中表示類似項(xiàng),因此,一旦某一項(xiàng)在一個附圖中被定義,則在隨后的附圖中不需要對其進(jìn)行進(jìn)一步定義和解釋。