專利名稱:一種單線程瀏覽器及其處理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及瀏覽器技術(shù)領(lǐng)域,具體而言,涉及一種單線程瀏覽器及其處理方法。
背景技術(shù):
目前機頂盒瀏覽器多是單線程的,在單線程瀏覽器進行底層業(yè)務(wù)處理時,即單線 程瀏覽器調(diào)用底層服務(wù),或者處理底層業(yè)務(wù)流程時,單線程瀏覽器線程阻塞,只能等待底層 業(yè)務(wù)處理完畢后,瀏覽器才能繼續(xù)進行后續(xù)處理,當業(yè)務(wù)處理時間比較長時,導(dǎo)致瀏覽器頁 面給用戶的感覺是長時間無動靜,使用戶誤以為死機,從而用戶的使用感受度較差。現(xiàn)有的多線程瀏覽器使用基于進度條方案實現(xiàn)用戶在瀏覽器底層業(yè)務(wù)處理時提 示用戶系統(tǒng)處理仍在進行中,但多線程瀏覽器使用的進度條方案不能應(yīng)用于單線程的機頂 盒瀏覽器,現(xiàn)在單線程機頂盒瀏覽器中尚沒有實現(xiàn)進度條的方案。針對相關(guān)技術(shù)中當單線程瀏覽器處理用戶系統(tǒng)業(yè)務(wù)的時間較長時,用戶無法看到 系統(tǒng)業(yè)務(wù)進度,導(dǎo)致用戶使用感受度較差的問題,目前尚未提出有效的解決方案。
發(fā)明內(nèi)容
針對相關(guān)技術(shù)中當單線程瀏覽器處理用戶系統(tǒng)業(yè)務(wù)的時間較長時,用戶無法看到 系統(tǒng)業(yè)務(wù)進度,導(dǎo)致用戶使用感受度較差的問題而提出本發(fā)明,為此,本發(fā)明的主要目的在 于提供一種單線程瀏覽器及其處理方法,以解決上述問題。為了實現(xiàn)上述目的,根據(jù)本發(fā)明的一個方面,提供了一種單線程瀏覽器的處理方法。根據(jù)本發(fā)明的單線程瀏覽器的處理方法包括單線程瀏覽器啟動業(yè)務(wù)進程,以調(diào) 用底層服務(wù);單線程瀏覽器顯示底層服務(wù)的執(zhí)行進度。優(yōu)選地,單線程瀏覽器通過進度條顯示底層服務(wù)的執(zhí)行進度,在單線程瀏覽器啟 動單線程瀏覽器業(yè)務(wù)進程以調(diào)用底層服務(wù)的步驟中,進一步包括單線程瀏覽器業(yè)務(wù)進程 將進程控制權(quán)轉(zhuǎn)交給進度條進程,通過進度條進程啟用進度條;進度條進程啟動底層服務(wù); 在執(zhí)行底層服務(wù)結(jié)束后,進度條進程將進程控制權(quán)返回單線程瀏覽器業(yè)務(wù)進程。優(yōu)選地,在單線程瀏覽器啟動單線程瀏覽器業(yè)務(wù)進程以調(diào)用底層服務(wù)的步驟中, 進度條進程啟動底層服務(wù)之后,進一步包括進度條進程返回,并在返回后訪問底層服務(wù)的 結(jié)束標志位;進度條進程判斷結(jié)束標志位是否置位,在結(jié)束標志位置位情況下,進度條進程 結(jié)束訪問結(jié)束標志位以指示底層服務(wù)執(zhí)行結(jié)束;在結(jié)束標志位沒有置位的情況下,進度條 進程繼續(xù)訪問結(jié)束標志位,直到結(jié)束標志位置位。優(yōu)選地,在進度條進程訪問底層服務(wù)的結(jié)束標志位之前,方法還包括進度條進程 根據(jù)預(yù)定的時間間隔將底層服務(wù)執(zhí)行的總時間進行分隔,得到進度條步長;進度條進程根 據(jù)進度條步長訪問底層服務(wù)的結(jié)束標志位;進度條進程根據(jù)進度條步長訪問底層服務(wù)的結(jié) 束標志位的結(jié)果來通過進度條顯示底層服務(wù)的執(zhí)行進度。 優(yōu)選地,在結(jié)束標志位沒有置位的情況下,進度條進程每訪問一次結(jié)束標志位,則前進一個進度條步長。優(yōu)選地,在進度條進程訪問底層服務(wù)的結(jié)束標志位時,如果結(jié)束標志位已置位,則 進度條進程指示底層服務(wù)執(zhí)行完成。優(yōu)選地,進度條步長在進度條上為一個固定長度的填充格,方法包括在結(jié)束標志 位沒有置位的情況下,進度條進程以進度條步長為單位來填充進度條上的填充格;在結(jié)束 標志位置位的情況下,進度條上的未被填充的填充格被一次性填充完。為了實現(xiàn)上述目的,根據(jù)本發(fā)明的另一方面,提供了一種單線程瀏覽器。根據(jù)本發(fā)明的單線程瀏覽器,包括啟動模塊,用于單線程瀏覽器啟動業(yè)務(wù)進程, 以調(diào)用底層服務(wù);顯示模塊,用于單線程瀏覽器顯示底層服務(wù)的執(zhí)行進度。優(yōu)選地,啟動模塊還包括進程控制權(quán)轉(zhuǎn)交模塊,用于使單線程瀏覽器業(yè)務(wù)進程將 進程控制權(quán)轉(zhuǎn)交給進度條進程,啟用進度條;啟動子模塊,用于使進度條進程啟動底層服 務(wù);訪問模塊,用于在進度條進程啟動底層服務(wù)之后,使進度條進程返回,并在返回后訪問 底層服務(wù)的結(jié)束標志位;判斷模塊,用于使進度條進程判斷結(jié)束標志位是否置位。優(yōu)選地,在結(jié)束標志位沒有置位的情況下,進度條進程每訪問一次結(jié)束標志位,則 前進一個進度條步長。通過本發(fā)明,采用單線程瀏覽器啟動業(yè)務(wù)進程,以調(diào)用底層服務(wù);單線程瀏覽器顯 示底層服務(wù)的執(zhí)行進度,解決了相關(guān)技術(shù)中當單線程瀏覽器處理用戶系統(tǒng)業(yè)務(wù)的時間較長 時,用戶無法看到系統(tǒng)業(yè)務(wù)進度,導(dǎo)致用戶使用感受度較差的問題,進而達到了在單線程瀏 覽器上實現(xiàn)進度條服務(wù),提高用戶使用業(yè)務(wù)的感受度。
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本申請的一部分,本發(fā) 明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中圖1是根據(jù)本發(fā)明實施例的單線程瀏覽器的處理系統(tǒng)的示意圖;圖2是根據(jù)本發(fā)明實施例的單線程瀏覽器的處理方法的流程示意圖;圖3是根據(jù)本發(fā)明實施例的進度條的示意圖;圖4是根據(jù)本發(fā)明實施例的單線程瀏覽器的處理方法的優(yōu)選的流程示意圖;圖5是根據(jù)本發(fā)明實施例的單線程瀏覽器結(jié)構(gòu)的示意圖。
具體實施例方式需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相 互組合。下面將參考附圖并結(jié)合實施例來詳細說明本發(fā)明。根據(jù)本發(fā)明的實施例,提供了一種單線程瀏覽器的處理系統(tǒng)。圖1是根據(jù)本發(fā)明實施例的單線程瀏覽器的處理系統(tǒng)的示意圖。如圖1所示,該單線程瀏覽器的處理系統(tǒng)包括業(yè)務(wù)進程11、進度條進程12、底層 服務(wù)13和結(jié)束標志位14。本發(fā)明通過業(yè)務(wù)進程11與進度條進程12進行交互,進度條進程 12與底層服務(wù)13進行交互實現(xiàn)單線程瀏覽器使用進度條解決用戶無法看到底層服務(wù)的系 統(tǒng)業(yè)務(wù)進程的問題。本發(fā)明實施例實現(xiàn)的單線程瀏覽器進度條方案中,單線程瀏覽器業(yè)務(wù)進程啟動底層功能流程后,立即將瀏覽器線程控制權(quán)轉(zhuǎn)交給進度條進程,進度條進程按照一定時間間隔不斷訪問底層功能流程維護的結(jié)束標志位,并逐漸向前填充進度條展示圖片,提示用戶 系統(tǒng)沒有死機。直到底層功能流程執(zhí)行結(jié)束,結(jié)束標志位被置位,進度條進程完成填充進度 條圖片,并將瀏覽器進程控制權(quán)交給業(yè)務(wù)進程的流程。其中,本發(fā)明實施例的進度條圖片指展示給用戶的動態(tài)圖片,如圖3所示的本發(fā) 明實施例的進度條的示意圖,當進度條進程每次訪問底層功能流程的結(jié)束標志位,若沒有 置位時,進度條圖片向前填充一格,直至底層功能流程執(zhí)行完畢,進度條圖片填充完畢。圖2是根據(jù)本發(fā)明實施例的單線程瀏覽器的處理方法的流程示意圖。如圖2所示,該方法包括如下的步驟S202至步驟S204 步驟S202,單線程瀏覽器啟動業(yè)務(wù)進程,以調(diào)用底層服務(wù);步驟S204,單線程瀏覽器顯示底層服務(wù)的執(zhí)行進度。本發(fā)明通過單線程瀏覽器顯示底層服務(wù)的執(zhí)行進度,實現(xiàn)用戶可以更直觀的看到 系統(tǒng)業(yè)務(wù)的執(zhí)行狀態(tài),便于用戶區(qū)分單線程瀏覽器的假死機狀態(tài),改善了用戶的使用感受度。本發(fā)明實施例中,單線程瀏覽器通過進度條顯示底層服務(wù)的執(zhí)行進度,在單線程 瀏覽器啟動單線程瀏覽器業(yè)務(wù)進程以調(diào)用底層服務(wù)的步驟中,可以進一步包括單線程瀏 覽器業(yè)務(wù)進程將進程控制權(quán)轉(zhuǎn)交給進度條進程,通過進度條進程啟用進度條;進度條進程 啟動底層服務(wù);在執(zhí)行底層服務(wù)結(jié)束后,進度條進程將進程控制權(quán)返回單線程瀏覽器業(yè)務(wù) 進程。該過程中用戶通過進度條直觀了解系統(tǒng)底層業(yè)務(wù)的工作狀態(tài)。其中,在單線程瀏覽器啟動單線程瀏覽器業(yè)務(wù)進程以調(diào)用底層服務(wù)的步驟中,進 度條進程啟動底層服務(wù)之后,可以進一步包括進度條進程返回,并在返回后訪問底層服務(wù) 的結(jié)束標志位;進度條進程判斷結(jié)束標志位是否置位,在結(jié)束標志位置位情況下,進度條進 程結(jié)束訪問結(jié)束標志位以指示底層服務(wù)執(zhí)行結(jié)束;在結(jié)束標志位沒有置位的情況下,進度 條進程繼續(xù)訪問結(jié)束標志位,直到結(jié)束標志位置位。在本發(fā)明實施例中,系統(tǒng)通過不斷訪問 底層服務(wù)維護的結(jié)束標志位,提示用戶系統(tǒng)業(yè)務(wù)沒有死機,改善用戶的使用感受度。更進一步的,在進度條進程訪問底層服務(wù)的結(jié)束標志位之前,方法還可以包括進 度條進程根據(jù)預(yù)定的時間間隔將底層服務(wù)執(zhí)行的總時間進行分隔,得到進度條步長;進度 條進程根據(jù)進度條步長訪問底層服務(wù)的結(jié)束標志位;進度條進程根據(jù)進度條步長訪問底層 服務(wù)的結(jié)束標志位的結(jié)果來通過進度條顯示底層服務(wù)的執(zhí)行進度。進度條步長更直觀的顯 示了服務(wù)的執(zhí)行狀態(tài)。其中,在結(jié)束標志位沒有置位的情況下,進度條進程每訪問一次結(jié)束標志位,則前 進一個進度條步長。進步條步長顯示了此時底層服務(wù)完成的進度情況。其中,在進度條進程訪問底層服務(wù)的結(jié)束標志位時,如果結(jié)束標志位已置位,則進 度條進程指示底層服務(wù)執(zhí)行完成。進步條步長顯示底層服務(wù)已經(jīng)完成。本發(fā)明中,進度條步長在進度條上為一個固定長度的填充格,方法包括在結(jié)束標 志位沒有置位的情況下,進度條進程以進度條步長為單位來填充進度條上的填充格;在結(jié) 束標志位置位的情況下,進度條上的未被填充的填充格被一次性填充完。圖4是根據(jù)本發(fā)明實施例的單線程瀏覽器的處理方法的優(yōu)選的流程示意圖。如圖4所示,該方法包括如下步驟
步驟S401,單線程瀏覽器業(yè)務(wù)進程需要調(diào)用底層服務(wù),即調(diào)用底層功能流程時,單 線程瀏覽器業(yè)務(wù)進程將進程控制權(quán)轉(zhuǎn)交給進度條進程。步驟S402,進度條進程觸發(fā)底層功能流程,在進度條進程啟動底層功能流程成功 后,進度條進程啟動底層功能流程后立即返回,開始執(zhí)行步驟S403,此時進度條進程并不會 將瀏覽器進程阻塞到底層功能流程處理結(jié)束。本發(fā)明實施例中的進度條進程僅是觸發(fā)底層功能流程,并不等待底層功能流程執(zhí) 行完畢返回,而是立即返回。步驟S403,進度條進程訪問底層功能處理流程的結(jié)束標志位。并判斷結(jié)束標志位 是否置位,如果置位則執(zhí)行步驟S406,否則進度條進程重復(fù)執(zhí)行步驟S403和步驟S404,直 到結(jié)束標志位置位。本發(fā)明實施例中,底層功能會維護一個結(jié)束標志位,瀏覽器進度條進程每隔一段 固定時間間隔訪問結(jié)束標志位,若結(jié)束標志位沒有置位,進度條展示圖片則向前移動一個 時間格,在底層功能流程執(zhí)行完畢后將此結(jié)束標志位置位。步驟S404,進度條向前填充一個時間格。本發(fā)明實施例中,進度條進程繪制進度條展示圖片,長度約為底層處理流程的最 大時間長度,并按照一個固定時間間隔分為多個時間格;進度條進程每隔這個固定時間間 隔就訪問底層處理結(jié)束標志位,如果結(jié)束標志位沒有置位,則進度條展示圖片向前填充一 個時間格,直到底層處理結(jié)束標志位置位步驟S405,底層功能流程執(zhí)行結(jié)束,結(jié)束標志位置位。在步驟S403和步驟S404執(zhí)行的過程中,底層業(yè)務(wù)功能處理流程自己執(zhí)行,當?shù)讓?功能流程結(jié)束時將結(jié)束標志位置位。步驟S406,當結(jié)束標志位置位時,進度條填充完畢,結(jié)束進度條進程,執(zhí)行步驟 S407。本發(fā)明實施例中,如果進度條進程訪問到結(jié)束標志位已置位,進度條展示圖片被 一次性填充完,進度條進程結(jié)束,返回單線程瀏覽器將進程控制權(quán)還給業(yè)務(wù)進程,繼續(xù)進行 下一步業(yè)務(wù)處理。步驟S407,進度條進程返回進程控制權(quán)給業(yè)務(wù)進程。此時,進度條圖片填充完,進 度條進程結(jié)束,本實施例實現(xiàn)了單線程瀏覽器下進度條功能以提示用戶系統(tǒng)仍在運行中。需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的 計算機系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不 同于此處的順序執(zhí)行所示出或描述的步驟。根據(jù)本發(fā)明的實施例,提供了一種單線程瀏覽器。圖5是根據(jù)本發(fā)明實施例的單線程瀏覽器結(jié)構(gòu)的示意圖。
如圖5所示,該單線程瀏覽器包括啟動模塊51和顯示模塊52。其中,啟動模塊51,用于單線程瀏覽器啟動業(yè)務(wù)進程,以調(diào)用底層服務(wù);顯示模塊 52,用于單線程瀏覽器顯示底層服務(wù)的執(zhí)行進度。優(yōu)選地,啟動模塊還包括進程控制權(quán)轉(zhuǎn)交模塊511、啟動子模塊512、訪問模塊 513和判斷模塊514。其中,進程控制權(quán)轉(zhuǎn)交模塊511,用于使單線程瀏覽器業(yè)務(wù)進程將進程控制權(quán)轉(zhuǎn)交給進度條進程,啟用進度條;啟動子模塊512,用于使進度條進程啟動底層服務(wù);訪問模塊 513,用于在進度條進程啟動底層服務(wù)之后,使進度條進程返回,并在返回后訪問底層服務(wù) 的結(jié)束標志位;判斷模塊514,用于使進度條進程判斷結(jié)束標志位是否置位。優(yōu)選地,在結(jié)束標志位沒有置位的情況下,進度條進程每訪問一次結(jié)束標志位,則前進一個進度條步長。從以上的描述中,可以看出,本發(fā)明實現(xiàn)了如下技術(shù)效果實現(xiàn)在單線程瀏覽器處理底層業(yè)務(wù)時提示用戶系統(tǒng)處理仍在進行中,避免發(fā)生用戶以為假死機的情況,改善了用 戶的使用感受度。顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用 的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成 的網(wǎng)絡(luò)上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲 在存儲裝置中由計算裝置來執(zhí)行,或者將它們分別制作成各個集成電路模塊,或者將它們 中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本發(fā)明不限制于任何特定的 硬件和軟件結(jié)合。以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技 術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修 改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
一種單線程瀏覽器的處理方法,其特征在于,包括單線程瀏覽器啟動業(yè)務(wù)進程,以調(diào)用底層服務(wù);所述單線程瀏覽器顯示所述底層服務(wù)的執(zhí)行進度。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述單線程瀏覽器通過進度條顯示所述 底層服務(wù)的執(zhí)行進度,在所述單線程瀏覽器啟動單線程瀏覽器業(yè)務(wù)進程以調(diào)用底層服務(wù)的 步驟中,進一步包括所述單線程瀏覽器業(yè)務(wù)進程將進程控制權(quán)轉(zhuǎn)交給進度條進程,通過所述進度條進程啟 用進度條;所述進度條進程啟動所述底層服務(wù);在執(zhí)行所述底層服務(wù)結(jié)束后,所述進度條進程將所述進程控制權(quán)返回所述單線程瀏覽 器業(yè)務(wù)進程。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,在所述單線程瀏覽器啟動單線程瀏覽 器業(yè)務(wù)進程以調(diào)用底層服務(wù)的步驟中,所述進度條進程啟動所述底層服務(wù)之后,進一步包 括所述進度條進程返回,并在返回后訪問所述底層服務(wù)的結(jié)束標志位;所述進度條進程判斷所述結(jié)束標志位是否置位,在所述結(jié)束標志位置位情況下,所述進度條進程結(jié)束訪問所述結(jié)束標志位以指示所述 底層服務(wù)執(zhí)行結(jié)束;在所述結(jié)束標志位沒有置位的情況下,所述進度條進程繼續(xù)訪問所述結(jié)束標志位,直 到所述結(jié)束標志位置位。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,在所述進度條進程訪問所述底層服務(wù)的 結(jié)束標志位之前,所述方法還包括所述進度條進程根據(jù)預(yù)定的時間間隔將所述底層服務(wù)執(zhí)行的總時間進行分隔,得到進 度條步長;所述進度條進程根據(jù)所述進度條步長訪問所述底層服務(wù)的結(jié)束標志位;所述進度條進程根據(jù)所述進度條步長訪問所述底層服務(wù)的結(jié)束標志位的結(jié)果來通過 所述進度條顯示所述底層服務(wù)的執(zhí)行進度。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,在所述結(jié)束標志位沒有置位的情況下,所 述進度條進程每訪問一次所述結(jié)束標志位,則前進一個所述進度條步長。
6.根據(jù)權(quán)利要求4所述的方法,其特征在于,在所述進度條進程訪問所述底層服務(wù)的 結(jié)束標志位時,如果所述結(jié)束標志位已置位,則所述進度條進程指示所述底層服務(wù)執(zhí)行完 成。
7.根據(jù)權(quán)利要求3至6中任一項所述的方法,其特征在于,所述進度條步長在所述進度 條上為一個固定長度的填充格,所述方法包括在所述結(jié)束標志位沒有置位的情況下,所述進度條進程以所述進度條步長為單位來填 充所述進度條上的填充格;在所述結(jié)束標志位置位的情況下,所述進度條上的未被填充的填充格被一次性填充完。
8.一種單線程瀏覽器,其特征在于,包括啟動模塊,用于單線程瀏覽器啟動業(yè)務(wù)進程,以調(diào)用底層服務(wù); 顯示模塊,用于所述單線程瀏覽器顯示所述底層服務(wù)的執(zhí)行進度。
9.根據(jù)權(quán)利要求8所述的單線程瀏覽器,其特征在于,所述啟動模塊還包括進程控制權(quán)轉(zhuǎn)交模塊,用于使所述單線程瀏覽器業(yè)務(wù)進程將進程控制權(quán)轉(zhuǎn)交給進度條 進程,啟用進度條;啟動子模塊,用于使所述進度條進程啟動所述底層服務(wù);訪問模塊,用于在所述進度條進程啟動所述底層服務(wù)之后,使所述進度條進程返回,并 在返回后訪問所述底層服務(wù)的結(jié)束標志位;判斷模塊,用于使所述進度條進程判斷所述結(jié)束標志位是否置位。
10.根據(jù)權(quán)利要求9所述的單線程瀏覽器,其特征在于,在所述結(jié)束標志位沒有置位的 情況下,所述進度條進程每訪問一次所述結(jié)束標志位,則前進一個所述進度條步長。
全文摘要
本發(fā)明公開了一種單線程瀏覽器的處理方法及裝置。其中,該方法包括單線程瀏覽器啟動業(yè)務(wù)進程,以調(diào)用底層服務(wù);單線程瀏覽器顯示底層服務(wù)的執(zhí)行進度。通過本發(fā)明,能夠在單線程瀏覽器上實現(xiàn)進度條服務(wù),提高用戶使用業(yè)務(wù)的感受度。
文檔編號G06F9/46GK101814040SQ20101013967
公開日2010年8月25日 申請日期2010年4月1日 優(yōu)先權(quán)日2010年4月1日
發(fā)明者潘在友, 王蜀洪, 齊志峰 申請人:北京數(shù)碼視訊科技股份有限公司