網(wǎng)頁(yè)處理方法和裝置制造方法
【專(zhuān)利摘要】本發(fā)明提出一種網(wǎng)頁(yè)處理方法和裝置,該網(wǎng)頁(yè)處理方法包括在通過(guò)內(nèi)核線(xiàn)程處理當(dāng)前網(wǎng)頁(yè)的過(guò)程中,監(jiān)控所述當(dāng)前網(wǎng)頁(yè)的處理狀態(tài);當(dāng)檢測(cè)到所述當(dāng)前網(wǎng)頁(yè)處于阻塞狀態(tài)時(shí),暫停對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理;并通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè)。該方法可以在一個(gè)網(wǎng)頁(yè)被阻塞時(shí)不影響其他網(wǎng)頁(yè)的運(yùn)行,提升網(wǎng)頁(yè)運(yùn)行效率。
【專(zhuān)利說(shuō)明】網(wǎng)頁(yè)處理方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信【技術(shù)領(lǐng)域】,尤其涉及一種網(wǎng)頁(yè)處理方法和裝置。
【背景技術(shù)】
[0002]現(xiàn)有的瀏覽器內(nèi)核使用單線(xiàn)程模型,該單線(xiàn)程模型中的線(xiàn)程可以稱(chēng)為內(nèi)核線(xiàn)程,內(nèi)核線(xiàn)程運(yùn)行在一個(gè)消息循環(huán)(loop)中,網(wǎng)頁(yè)數(shù)據(jù)的解析、網(wǎng)頁(yè)排版和渲染都是在該內(nèi)核線(xiàn)程中處理。當(dāng)內(nèi)核線(xiàn)程在處理某些操作時(shí),需要暫停某個(gè)網(wǎng)頁(yè)的執(zhí)行,并等待該網(wǎng)頁(yè)完成某種操作后才恢復(fù)運(yùn)行。例如,當(dāng)網(wǎng)頁(yè)中彈出告警對(duì)話(huà)框時(shí),內(nèi)核線(xiàn)程會(huì)暫停執(zhí)行對(duì)該網(wǎng)頁(yè)的操作,直到用戶(hù)點(diǎn)擊對(duì)話(huà)框上的確認(rèn)按鈕后,內(nèi)核線(xiàn)程才會(huì)恢復(fù)運(yùn)行對(duì)該網(wǎng)頁(yè)的操作。
[0003]當(dāng)在瀏覽器中打開(kāi)多個(gè)網(wǎng)頁(yè)時(shí),所有的網(wǎng)頁(yè)都是在同一個(gè)內(nèi)核線(xiàn)程中處理的,當(dāng)一個(gè)網(wǎng)頁(yè)被阻塞時(shí),其他網(wǎng)頁(yè)也無(wú)法繼續(xù)處理。
【發(fā)明內(nèi)容】
[0004]本發(fā)明旨在至少在一定程度上解決相關(guān)技術(shù)中的技術(shù)問(wèn)題之一。
[0005]為此,本發(fā)明的一個(gè)目的在于提出一種網(wǎng)頁(yè)處理方法,該方法可以在一個(gè)網(wǎng)頁(yè)被阻塞時(shí)不影響其他網(wǎng)頁(yè)的運(yùn)行,提升網(wǎng)頁(yè)運(yùn)行效率。
[0006]本發(fā)明的另一個(gè)目的在于提出一種網(wǎng)頁(yè)處理裝置。為達(dá)到上述目的,本發(fā)明第一方面實(shí)施例提出的網(wǎng)頁(yè)處理方法,包括:在通過(guò)內(nèi)核線(xiàn)程處理當(dāng)前網(wǎng)頁(yè)的過(guò)程中,監(jiān)控所述當(dāng)前網(wǎng)頁(yè)的處理狀態(tài);當(dāng)檢測(cè)到所述當(dāng)前網(wǎng)頁(yè)處于阻塞狀態(tài)時(shí),暫停對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理;并通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè)。
[0007]可選的,所述通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè),包括:
[0008]在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,忽略對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理而繼續(xù)處理所述其他網(wǎng)頁(yè)。
[0009]可選的,還包括:
[0010]當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0011]可選的,所述通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè),包括:
[0012]在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,再調(diào)用新的消息循環(huán),在所述新的消息循環(huán)中處理所述其他網(wǎng)頁(yè)。
[0013]可選的,還包括:
[0014]當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),退出所述新的消息循環(huán),并在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0015]本發(fā)明第一方面實(shí)施例提出的網(wǎng)頁(yè)處理方法,通過(guò)當(dāng)一個(gè)網(wǎng)頁(yè)出現(xiàn)阻塞后,會(huì)繼續(xù)處理其他網(wǎng)頁(yè),可以在一個(gè)網(wǎng)頁(yè)被阻塞時(shí)不影響其他網(wǎng)頁(yè)的運(yùn)行,提升網(wǎng)頁(yè)運(yùn)行效率。
[0016]為達(dá)到上述目的,本發(fā)明第二方面實(shí)施例提出的網(wǎng)頁(yè)處理裝置,包括:監(jiān)控模塊,用于在通過(guò)內(nèi)核線(xiàn)程處理當(dāng)前網(wǎng)頁(yè)的過(guò)程中,監(jiān)控所述當(dāng)前網(wǎng)頁(yè)的處理狀態(tài);檢測(cè)模塊,用于當(dāng)檢測(cè)到所述當(dāng)前網(wǎng)頁(yè)處于阻塞狀態(tài)時(shí),暫停對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理;處理模塊,用于通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè)。
[0017]可選的,所述處理模塊包括第一單元,所述第一單元用于在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,忽略對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理而繼續(xù)處理所述其他網(wǎng)頁(yè)。
[0018]可選的,所述處理模塊還包括第二單元,所述第二單元用于當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0019]可選的,所述處理模塊包括第三單元,所述第三單元用于在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,再調(diào)用新的消息循環(huán),在所述新的消息循環(huán)中處理所述其他網(wǎng)頁(yè)。
[0020]可選的,所述處理模塊還包括第四單元,所述第四單元用于當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),退出所述新的消息循環(huán),并在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0021]本發(fā)明第二方面實(shí)施例提出的網(wǎng)頁(yè)處理裝置,通過(guò)當(dāng)一個(gè)網(wǎng)頁(yè)出現(xiàn)阻塞后,會(huì)繼續(xù)處理其他網(wǎng)頁(yè),可以在一個(gè)網(wǎng)頁(yè)被阻塞時(shí)不影響其他網(wǎng)頁(yè)的運(yùn)行,提升網(wǎng)頁(yè)運(yùn)行效率。
[0022]為達(dá)到上述目的,本發(fā)明第三方面實(shí)施例提出的客戶(hù)端設(shè)備,包括:殼體、處理器、存儲(chǔ)器、電路板和電源電路,其中,電路板安置在殼體圍成的空間內(nèi)部,處理器和存儲(chǔ)器設(shè)置在電路板上;電源電路,用于為客戶(hù)端設(shè)備的各個(gè)電路或器件供電;存儲(chǔ)器用于存儲(chǔ)可執(zhí)行程序代碼;處理器通過(guò)讀取存儲(chǔ)器中存儲(chǔ)的可執(zhí)行程序代碼來(lái)運(yùn)行與可執(zhí)行程序代碼對(duì)應(yīng)的程序,以用于執(zhí)行:在通過(guò)內(nèi)核線(xiàn)程處理當(dāng)前網(wǎng)頁(yè)的過(guò)程中,監(jiān)控所述當(dāng)前網(wǎng)頁(yè)的處理狀態(tài);當(dāng)檢測(cè)到所述當(dāng)前網(wǎng)頁(yè)處于阻塞處于;并通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè)。
[0023]可選的,所述通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè),包括:
[0024]在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,忽略對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理而繼續(xù)處理所述其他網(wǎng)頁(yè)。
[0025]可選的,還包括:
[0026]當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0027]可選的,所述通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè),包括:
[0028]在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,再調(diào)用新的消息循環(huán),在所述新的消息循環(huán)中處理所述其他網(wǎng)頁(yè)。
[0029]可選的,還包括:
[0030]當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),退出所述新的消息循環(huán),并在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0031]本發(fā)明第三方面實(shí)施例提出的客戶(hù)端設(shè)備,通過(guò)當(dāng)一個(gè)網(wǎng)頁(yè)出現(xiàn)阻塞后,會(huì)繼續(xù)處理其他網(wǎng)頁(yè),可以在一個(gè)網(wǎng)頁(yè)被阻塞時(shí)不影響其他網(wǎng)頁(yè)的運(yùn)行,提升網(wǎng)頁(yè)運(yùn)行效率。
[0032]本發(fā)明附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過(guò)本發(fā)明的實(shí)踐了解到。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0033]本發(fā)明上述的和/或附加的方面和優(yōu)點(diǎn)從下面結(jié)合附圖對(duì)實(shí)施例的描述中將變得明顯和容易理解,其中:
[0034]圖1是本發(fā)明一實(shí)施例提出的網(wǎng)頁(yè)處理方法的流程示意圖;
[0035]圖2是本發(fā)明另一實(shí)施例提出的網(wǎng)頁(yè)處理方法的流程示意圖;
[0036]圖3是本發(fā)明實(shí)施例中在消息循環(huán)中處理指令的流程示意圖;
[0037]圖4是本發(fā)明另一實(shí)施例提出的網(wǎng)頁(yè)處理方法的流程示意圖;
[0038]圖5是本發(fā)明另一實(shí)施例提出的網(wǎng)頁(yè)處理裝置的結(jié)構(gòu)示意圖;
[0039]圖6是本發(fā)明另一實(shí)施例提出的網(wǎng)頁(yè)處理裝置的結(jié)構(gòu)示意圖;
[0040]圖7是本發(fā)明另一實(shí)施例提出的網(wǎng)頁(yè)處理裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0041]下面詳細(xì)描述本發(fā)明的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中自始至終相同或類(lèi)似的標(biāo)號(hào)表示相同或類(lèi)似的元件或具有相同或類(lèi)似功能的元件。下面通過(guò)參考附圖描述的實(shí)施例是示例性的,僅用于解釋本發(fā)明,而不能理解為對(duì)本發(fā)明的限制。相反,本發(fā)明的實(shí)施例包括落入所附加權(quán)利要求書(shū)的精神和內(nèi)涵范圍內(nèi)的所有變化、修改和等同物。
[0042]圖1為本發(fā)明一實(shí)施例提出的網(wǎng)頁(yè)處理方法的流程示意圖,該方法包括:
[0043]Sll:在通過(guò)內(nèi)核線(xiàn)程處理當(dāng)前網(wǎng)頁(yè)的過(guò)程中,監(jiān)控所述當(dāng)前網(wǎng)頁(yè)的處理狀態(tài)。
[0044]本實(shí)施例的執(zhí)行主體可以具體是瀏覽器內(nèi)核。
[0045]S12:當(dāng)檢測(cè)到所述當(dāng)前網(wǎng)頁(yè)處于阻塞狀態(tài)時(shí),暫停對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0046]網(wǎng)頁(yè)處于阻塞狀態(tài)是指當(dāng)存在多個(gè)網(wǎng)頁(yè)時(shí),其中一個(gè)網(wǎng)頁(yè)的操作被阻塞。例如,當(dāng)?shù)谝痪W(wǎng)頁(yè)中的腳本(javascript)代碼彈出警告(alert)對(duì)話(huà)框時(shí),內(nèi)核線(xiàn)程會(huì)暫停執(zhí)行,直到檢測(cè)到用戶(hù)在第一網(wǎng)頁(yè)上點(diǎn)擊對(duì)話(huà)框上的確認(rèn)按鈕后解除阻塞。
[0047]S13:并通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè)。
[0048]假設(shè)屬于同一個(gè)內(nèi)核線(xiàn)程的網(wǎng)頁(yè)包括第一網(wǎng)頁(yè)和第二網(wǎng)頁(yè),現(xiàn)有技術(shù)中,當(dāng)如上的第一網(wǎng)頁(yè)出現(xiàn)阻塞操作時(shí),即使其他網(wǎng)頁(yè)沒(méi)有出現(xiàn)阻塞的狀況,例如,第二網(wǎng)頁(yè)中沒(méi)有彈出警告對(duì)話(huà)框等,瀏覽器內(nèi)核依然不會(huì)對(duì)第二網(wǎng)頁(yè)的操作進(jìn)行處理,使得第二網(wǎng)頁(yè)出現(xiàn)阻塞。
[0049]而本實(shí)施例中,不對(duì)其他網(wǎng)頁(yè)進(jìn)行阻塞,而是通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理其他網(wǎng)頁(yè)的操作,例如繼續(xù)處理第二網(wǎng)頁(yè)中的操作。
[0050]本實(shí)施例中,當(dāng)一個(gè)網(wǎng)頁(yè)出現(xiàn)阻塞后,會(huì)通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理其他網(wǎng)頁(yè),可以在一個(gè)網(wǎng)頁(yè)被阻塞時(shí)不影響其他網(wǎng)頁(yè)的運(yùn)行,提升網(wǎng)頁(yè)運(yùn)行效率。
[0051]可選的,參見(jiàn)圖2,所述通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè)(S13)具體包括:
[0052]S131:在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,忽略對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理而繼續(xù)處理所述其他網(wǎng)頁(yè)。
[0053]其中,內(nèi)核線(xiàn)程可以通過(guò)調(diào)用消息循環(huán)(loop)函數(shù)執(zhí)行相應(yīng)操作。具體的,參見(jiàn)圖3,在消息循環(huán)中處理指令包括取指令模塊31從排隊(duì)序列中取出一個(gè)操作指令,之后處理模塊32對(duì)取出的操作指令進(jìn)行處理,當(dāng)處理完一個(gè)操作指令后再取出下一個(gè)操作指令并處理,依此類(lèi)推處理完所有操作指令。
[0054]現(xiàn)有技術(shù)中,當(dāng)處理第一網(wǎng)頁(yè)的一個(gè)操作指令時(shí),如果該操作指令發(fā)生阻塞,需要等待用戶(hù)界面(User Interface, UI)上的信號(hào),例如需要等待用戶(hù)點(diǎn)擊確認(rèn)按鈕,此時(shí),將停止取后續(xù)指令和處理,直至接收到該第一網(wǎng)頁(yè)的UI上的信號(hào)后再進(jìn)行后續(xù)取指令和處理的流程,如果其他網(wǎng)頁(yè)的操作指令在阻塞之后的流程中,那么其他網(wǎng)頁(yè)也出現(xiàn)了阻塞。
[0055]而本實(shí)施例中,將忽略對(duì)第一網(wǎng)頁(yè)的操作而繼續(xù)處理第二網(wǎng)頁(yè)的操作,也就是說(shuō)第一網(wǎng)頁(yè)出現(xiàn)阻塞后,忽略該阻塞,繼續(xù)從排隊(duì)序列中取其他網(wǎng)頁(yè)的指令并進(jìn)行處理。
[0056]可選的,當(dāng)發(fā)生阻塞的網(wǎng)頁(yè)接收到信號(hào)后同樣可以解除當(dāng)前網(wǎng)頁(yè)的阻塞,即參見(jiàn)圖2還可以包括:
[0057]S141:當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0058]例如,當(dāng)接收到第一網(wǎng)頁(yè)上的信號(hào),如用戶(hù)點(diǎn)擊確認(rèn)按鈕的信號(hào)后,在原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理,恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理包括處理第一網(wǎng)頁(yè)的指令和其他網(wǎng)頁(yè)的指令。
[0059]本實(shí)施例中,在一個(gè)網(wǎng)頁(yè)出現(xiàn)阻塞時(shí),調(diào)用的原有循環(huán)函數(shù)不停止運(yùn)行,而是繼續(xù)處理其他網(wǎng)頁(yè)的指令,可以在一個(gè)網(wǎng)頁(yè)被阻塞時(shí)不影響其他網(wǎng)頁(yè)的運(yùn)行,提升網(wǎng)頁(yè)運(yùn)行效率。
[0060]可選的,參見(jiàn)圖4,所述繼續(xù)處理與所述網(wǎng)頁(yè)屬于同一個(gè)內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè)(SI3)具體包括:
[0061]S132:在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,再調(diào)用新的消息循環(huán),在所述新的消息循環(huán)處理所述其他網(wǎng)頁(yè)。
[0062]如上所述,內(nèi)核線(xiàn)程可以通過(guò)調(diào)用循環(huán)函數(shù)執(zhí)行相應(yīng)操作。當(dāng)在處理第一網(wǎng)頁(yè)的一個(gè)操作指令時(shí)被阻塞時(shí),可以再調(diào)用一個(gè)新的循環(huán)函數(shù),實(shí)現(xiàn)循環(huán)函數(shù)的嵌套(nestedloop),由該新的循環(huán)函數(shù)繼續(xù)處理其他網(wǎng)頁(yè)的操作指令,例如,采用該新的循環(huán)函數(shù)繼續(xù)在排隊(duì)序列中取出第二網(wǎng)頁(yè)的操作指令并對(duì)取出的操作指令進(jìn)行處理。
[0063]可以理解的是,嵌套的循環(huán)函數(shù)不限于一個(gè),還可以是至少兩個(gè),例如,在第一循環(huán)函數(shù)中嵌套第二循環(huán)函數(shù)后,如果采用第二循環(huán)函數(shù)出現(xiàn)阻塞后,可以在第二循環(huán)函數(shù)中再嵌入第三循環(huán)函數(shù)。
[0064]可選的,當(dāng)發(fā)生阻塞的網(wǎng)頁(yè)接收到信號(hào)后可以退出嵌入的消息循環(huán),即參見(jiàn)圖4還可以包括:
[0065]S142:當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),退出所述新的消息循環(huán),并在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0066]例如,當(dāng)接收到第一網(wǎng)頁(yè)上的信號(hào),如用戶(hù)點(diǎn)擊確認(rèn)按鈕的信號(hào)后,退出新的消息循環(huán),繼續(xù)采用原有的消息循環(huán)恢復(fù)處理,恢復(fù)對(duì)所述網(wǎng)頁(yè)的處理包括處理第一網(wǎng)頁(yè)的指令和其他網(wǎng)頁(yè)的指令。
[0067]本實(shí)施例中,在一個(gè)網(wǎng)頁(yè)出現(xiàn)阻塞時(shí),在原有的消息循環(huán)中嵌入新的消息循環(huán),由新的消息循環(huán)處理其他網(wǎng)頁(yè)的指令,可以在一個(gè)網(wǎng)頁(yè)被阻塞時(shí)不影響其他網(wǎng)頁(yè)的運(yùn)行,提升網(wǎng)頁(yè)運(yùn)行效率。
[0068]圖5是本發(fā)明另一實(shí)施例提出的網(wǎng)頁(yè)處理裝置的結(jié)構(gòu)示意圖,該裝置50包括監(jiān)控模塊51、檢測(cè)模塊52和處理模塊53。
[0069]監(jiān)控模塊51用于在通過(guò)內(nèi)核線(xiàn)程處理當(dāng)前網(wǎng)頁(yè)的過(guò)程中,監(jiān)控所述當(dāng)前網(wǎng)頁(yè)的處理狀態(tài)。
[0070]本實(shí)施例的執(zhí)行主體可以具體是瀏覽器內(nèi)核。
[0071]檢測(cè)模塊52用于當(dāng)檢測(cè)到所述當(dāng)前網(wǎng)頁(yè)處于阻塞狀態(tài)時(shí),暫停對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0072]網(wǎng)頁(yè)處于阻塞狀態(tài)是指當(dāng)存在多個(gè)網(wǎng)頁(yè)時(shí),其中一個(gè)網(wǎng)頁(yè)的操作被阻塞。例如,當(dāng)?shù)谝痪W(wǎng)頁(yè)中的腳本(javascript)代碼彈出警告(alert)對(duì)話(huà)框時(shí),內(nèi)核線(xiàn)程會(huì)暫停執(zhí)行,直到檢測(cè)到用戶(hù)在第一網(wǎng)頁(yè)上點(diǎn)擊對(duì)話(huà)框上的確認(rèn)按鈕后解除阻塞。
[0073]處理模塊53用于通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè)。
[0074]假設(shè)屬于同一個(gè)內(nèi)核線(xiàn)程的網(wǎng)頁(yè)包括第一網(wǎng)頁(yè)和第二網(wǎng)頁(yè),現(xiàn)有技術(shù)中,當(dāng)如上的第一網(wǎng)頁(yè)出現(xiàn)阻塞操作時(shí),即使其他網(wǎng)頁(yè)沒(méi)有出現(xiàn)阻塞的狀況,例如,第二網(wǎng)頁(yè)中沒(méi)有彈出警告對(duì)話(huà)框等,瀏覽器內(nèi)核依然不會(huì)對(duì)第二網(wǎng)頁(yè)的操作進(jìn)行處理,使得第二網(wǎng)頁(yè)出現(xiàn)阻塞。
[0075]而本實(shí)施例中,不對(duì)其他網(wǎng)頁(yè)進(jìn)行阻塞,而是通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理其他網(wǎng)頁(yè)的操作,例如繼續(xù)處理第二網(wǎng)頁(yè)中的操作。
[0076]本實(shí)施例中,當(dāng)一個(gè)網(wǎng)頁(yè)出現(xiàn)阻塞后,會(huì)通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理其他網(wǎng)頁(yè),可以在一個(gè)網(wǎng)頁(yè)被阻塞時(shí)不影響其他網(wǎng)頁(yè)的運(yùn)行,提升網(wǎng)頁(yè)運(yùn)行效率。
[0077]可選的,一個(gè)實(shí)施例中,所述處理模塊53包括第一單元531,如圖6所示,所述第一單元531用于在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,忽略對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理而繼續(xù)處理所述其他網(wǎng)頁(yè)。
[0078]其中,內(nèi)核線(xiàn)程可以通過(guò)調(diào)用消息循環(huán)(loop)函數(shù)執(zhí)行相應(yīng)操作。具體的,參見(jiàn)圖3,在消息循環(huán)中處理指令包括取指令模塊31從排隊(duì)序列中取出一個(gè)操作指令,之后處理模塊32對(duì)取出的操作指令進(jìn)行處理,當(dāng)處理完一個(gè)操作指令后再取出下一個(gè)操作指令并處理,依此類(lèi)推處理完所有操作指令。
[0079]現(xiàn)有技術(shù)中,當(dāng)處理第一網(wǎng)頁(yè)的一個(gè)操作指令時(shí),如果該操作指令發(fā)生阻塞,需要等待用戶(hù)界面(User Interface, UI)上的信號(hào),例如需要等待用戶(hù)點(diǎn)擊確認(rèn)按鈕,此時(shí),將停止取后續(xù)指令和處理,直至接收到該第一網(wǎng)頁(yè)的UI上的信號(hào)后再進(jìn)行后續(xù)取指令和處理的流程,如果其他網(wǎng)頁(yè)的操作指令在阻塞之后的流程中,那么其他網(wǎng)頁(yè)也出現(xiàn)了阻塞。
[0080]而本實(shí)施例中,將忽略對(duì)第一網(wǎng)頁(yè)的操作而繼續(xù)處理第二網(wǎng)頁(yè)的操作,也就是說(shuō)第一網(wǎng)頁(yè)出現(xiàn)阻塞后,忽略該阻塞,繼續(xù)從排隊(duì)序列中取其他網(wǎng)頁(yè)的指令并進(jìn)行處理。
[0081 ] 可選的,另一個(gè)實(shí)施例中,所述處理模塊53還包括第二單元541,如圖6所示,所述第二單元541用于當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0082]例如,當(dāng)接收到第一網(wǎng)頁(yè)上的信號(hào),如用戶(hù)點(diǎn)擊確認(rèn)按鈕的信號(hào)后,在原有消息循環(huán)中恢復(fù)對(duì)所述網(wǎng)頁(yè)的處理,恢復(fù)對(duì)所述網(wǎng)頁(yè)的處理包括處理第一網(wǎng)頁(yè)的指令和其他網(wǎng)頁(yè)的指令。
[0083]本實(shí)施例中,在一個(gè)網(wǎng)頁(yè)出現(xiàn)阻塞時(shí),調(diào)用的原有循環(huán)函數(shù)不停止運(yùn)行,而是繼續(xù)處理其他網(wǎng)頁(yè)的指令,可以在一個(gè)網(wǎng)頁(yè)被阻塞時(shí)不影響其他網(wǎng)頁(yè)的運(yùn)行,提升網(wǎng)頁(yè)運(yùn)行效率。
[0084]可選的,另一個(gè)實(shí)施例中,所述處理模塊53包括第三單元532,如圖7所示,所述第三單元532用于在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,再調(diào)用新的消息循環(huán),在所述新的消息循環(huán)中處理所述其他網(wǎng)頁(yè)。
[0085]如上所述,內(nèi)核線(xiàn)程可以通過(guò)調(diào)用循環(huán)函數(shù)執(zhí)行相應(yīng)操作。當(dāng)在處理第一網(wǎng)頁(yè)的一個(gè)操作指令時(shí)被阻塞時(shí),可以再調(diào)用一個(gè)新的循環(huán)函數(shù),實(shí)現(xiàn)循環(huán)函數(shù)的嵌套(nestedloop),由該新的循環(huán)函數(shù)繼續(xù)處理其他網(wǎng)頁(yè)的操作指令,例如,采用該新的循環(huán)函數(shù)繼續(xù)在排隊(duì)序列中取出第二網(wǎng)頁(yè)的操作指令并對(duì)取出的操作指令進(jìn)行處理。
[0086]可以理解的是,嵌套的循環(huán)函數(shù)不限于一個(gè),還可以是至少兩個(gè),例如,在第一循環(huán)函數(shù)中嵌套第二循環(huán)函數(shù)后,如果采用第二循環(huán)函數(shù)出現(xiàn)阻塞后,可以在第二循環(huán)函數(shù)中再嵌入第三循環(huán)函數(shù)。
[0087]可選的,另一個(gè)實(shí)施例中,所述處理模塊53還包括第四單元542,如圖7所示,所述第四單元542用于當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),退出所述新的消息循環(huán),并在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0088]例如,當(dāng)接收到第一網(wǎng)頁(yè)上的信號(hào),如用戶(hù)點(diǎn)擊確認(rèn)按鈕的信號(hào)后,退出新的消息循環(huán),繼續(xù)采用原有的消息循環(huán)恢復(fù)處理,恢復(fù)對(duì)所述網(wǎng)頁(yè)的處理包括處理第一網(wǎng)頁(yè)的指令和其他網(wǎng)頁(yè)的指令。
[0089]本實(shí)施例中,在一個(gè)網(wǎng)頁(yè)出現(xiàn)阻塞時(shí),在原有的消息循環(huán)中嵌入新的消息循環(huán),由新的消息循環(huán)處理其他網(wǎng)頁(yè)的指令,可以在一個(gè)網(wǎng)頁(yè)被阻塞時(shí)不影響其他網(wǎng)頁(yè)的運(yùn)行,提升網(wǎng)頁(yè)運(yùn)行效率。
[0090]本發(fā)明實(shí)施例還提供了一種客戶(hù)端設(shè)備,該客戶(hù)端設(shè)備包括殼體、處理器、存儲(chǔ)器、電路板和電源電路,其中,電路板安置在殼體圍成的空間內(nèi)部,處理器和存儲(chǔ)器設(shè)置在電路板上;電源電路,用于為客戶(hù)端設(shè)備的各個(gè)電路或器件供電;存儲(chǔ)器用于存儲(chǔ)可執(zhí)行程序代碼;處理器通過(guò)讀取存儲(chǔ)器中存儲(chǔ)的可執(zhí)行程序代碼來(lái)運(yùn)行與可執(zhí)行程序代碼對(duì)應(yīng)的程序,以用于執(zhí)行:
[0091]SlT:在通過(guò)內(nèi)核線(xiàn)程處理當(dāng)前網(wǎng)頁(yè)的過(guò)程中,監(jiān)控所述當(dāng)前網(wǎng)頁(yè)的處理狀態(tài)。
[0092]本實(shí)施例的執(zhí)行主體可以具體是瀏覽器內(nèi)核。
[0093]S12’:當(dāng)檢測(cè)到所述當(dāng)前網(wǎng)頁(yè)處于阻塞狀態(tài)時(shí),暫停對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0094]網(wǎng)頁(yè)處于阻塞狀態(tài)是指當(dāng)存在多個(gè)網(wǎng)頁(yè)時(shí),其中一個(gè)網(wǎng)頁(yè)的操作被阻塞。例如,當(dāng)?shù)谝痪W(wǎng)頁(yè)中的腳本(javascript)代碼彈出警告(alert)對(duì)話(huà)框時(shí),內(nèi)核線(xiàn)程會(huì)暫停執(zhí)行,直到檢測(cè)到用戶(hù)在第一網(wǎng)頁(yè)上點(diǎn)擊對(duì)話(huà)框上的確認(rèn)按鈕后解除阻塞。
[0095]S13’:并通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè)。
[0096]假設(shè)屬于同一個(gè)內(nèi)核線(xiàn)程的網(wǎng)頁(yè)包括第一網(wǎng)頁(yè)和第二網(wǎng)頁(yè),現(xiàn)有技術(shù)中,當(dāng)如上的第一網(wǎng)頁(yè)出現(xiàn)阻塞操作時(shí),即使其他網(wǎng)頁(yè)沒(méi)有出現(xiàn)阻塞的狀況,例如,第二網(wǎng)頁(yè)中沒(méi)有彈出警告對(duì)話(huà)框等,瀏覽器內(nèi)核依然不會(huì)對(duì)第二網(wǎng)頁(yè)的操作進(jìn)行處理,使得第二網(wǎng)頁(yè)出現(xiàn)阻塞。
[0097]而本實(shí)施例中,不對(duì)其他網(wǎng)頁(yè)進(jìn)行阻塞,而是通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理其他網(wǎng)頁(yè)的操作,例如繼續(xù)處理第二網(wǎng)頁(yè)中的操作。
[0098]本實(shí)施例中,當(dāng)一個(gè)網(wǎng)頁(yè)出現(xiàn)阻塞后,會(huì)通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理其他網(wǎng)頁(yè),可以在一個(gè)網(wǎng)頁(yè)被阻塞時(shí)不影響其他網(wǎng)頁(yè)的運(yùn)行,提升網(wǎng)頁(yè)運(yùn)行效率。
[0099]可選的,所述通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè)(S13’ )具體包括:
[0100]S131’:在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,忽略對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理而繼續(xù)處理所述其他網(wǎng)頁(yè)。
[0101]其中,內(nèi)核線(xiàn)程可以通過(guò)調(diào)用消息循環(huán)(loop)函數(shù)執(zhí)行相應(yīng)操作。具體的,在消息循環(huán)中處理指令包括取指令模塊31從排隊(duì)序列中取出一個(gè)操作指令,之后處理模塊32對(duì)取出的操作指令進(jìn)行處理,當(dāng)處理完一個(gè)操作指令后再取出下一個(gè)操作指令并處理,依此類(lèi)推處理完所有操作指令。
[0102]現(xiàn)有技術(shù)中,當(dāng)處理第一網(wǎng)頁(yè)的一個(gè)操作指令時(shí),如果該操作指令發(fā)生阻塞,需要等待用戶(hù)界面(User Interface, UI)上的信號(hào),例如需要等待用戶(hù)點(diǎn)擊確認(rèn)按鈕,此時(shí),將停止取后續(xù)指令和處理,直至接收到該第一網(wǎng)頁(yè)的UI上的信號(hào)后再進(jìn)行后續(xù)取指令和處理的流程,如果其他網(wǎng)頁(yè)的操作指令在阻塞之后的流程中,那么其他網(wǎng)頁(yè)也出現(xiàn)了阻塞。
[0103]而本實(shí)施例中,將忽略對(duì)第一網(wǎng)頁(yè)的操作而繼續(xù)處理第二網(wǎng)頁(yè)的操作,也就是說(shuō)第一網(wǎng)頁(yè)出現(xiàn)阻塞后,忽略該阻塞,繼續(xù)從排隊(duì)序列中取其他網(wǎng)頁(yè)的指令并進(jìn)行處理。
[0104]可選的,當(dāng)發(fā)生阻塞的網(wǎng)頁(yè)接收到信號(hào)后同樣可以解除當(dāng)前網(wǎng)頁(yè)的阻塞,即還可以包括:
[0105]S141’:當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0106]例如,當(dāng)接收到第一網(wǎng)頁(yè)上的信號(hào),如用戶(hù)點(diǎn)擊確認(rèn)按鈕的信號(hào)后,在原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理,恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理包括處理第一網(wǎng)頁(yè)的指令和其他網(wǎng)頁(yè)的指令。
[0107]本實(shí)施例中,在一個(gè)網(wǎng)頁(yè)出現(xiàn)阻塞時(shí),調(diào)用的原有循環(huán)函數(shù)不停止運(yùn)行,而是繼續(xù)處理其他網(wǎng)頁(yè)的指令,可以在一個(gè)網(wǎng)頁(yè)被阻塞時(shí)不影響其他網(wǎng)頁(yè)的運(yùn)行,提升網(wǎng)頁(yè)運(yùn)行效率。
[0108]可選的,所述繼續(xù)處理與所述網(wǎng)頁(yè)屬于同一個(gè)內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè)(S13’ )具體包括:
[0109]S132’:在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,再調(diào)用新的消息循環(huán),在所述新的消息循環(huán)處理所述其他網(wǎng)頁(yè)。
[0110]如上所述,內(nèi)核線(xiàn)程可以通過(guò)調(diào)用循環(huán)函數(shù)執(zhí)行相應(yīng)操作。當(dāng)在處理第一網(wǎng)頁(yè)的一個(gè)操作指令時(shí)被阻塞時(shí),可以再調(diào)用一個(gè)新的循環(huán)函數(shù),實(shí)現(xiàn)循環(huán)函數(shù)的嵌套(nestedloop),由該新的循環(huán)函數(shù)繼續(xù)處理其他網(wǎng)頁(yè)的操作指令,例如,采用該新的循環(huán)函數(shù)繼續(xù)在排隊(duì)序列中取出第二網(wǎng)頁(yè)的操作指令并對(duì)取出的操作指令進(jìn)行處理。
[0111]可以理解的是,嵌套的循環(huán)函數(shù)不限于一個(gè),還可以是至少兩個(gè),例如,在第一循環(huán)函數(shù)中嵌套第二循環(huán)函數(shù)后,如果采用第二循環(huán)函數(shù)出現(xiàn)阻塞后,可以在第二循環(huán)函數(shù)中再嵌入第三循環(huán)函數(shù)。
[0112]可選的,當(dāng)發(fā)生阻塞的網(wǎng)頁(yè)接收到信號(hào)后可以退出嵌入的消息循環(huán),即還可以包括:
[0113]S142’:當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),退出所述新的消息循環(huán),并在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
[0114]例如,當(dāng)接收到第一網(wǎng)頁(yè)上的信號(hào),如用戶(hù)點(diǎn)擊確認(rèn)按鈕的信號(hào)后,退出新的消息循環(huán),繼續(xù)采用原有的消息循環(huán)恢復(fù)處理,恢復(fù)對(duì)所述網(wǎng)頁(yè)的處理包括處理第一網(wǎng)頁(yè)的指令和其他網(wǎng)頁(yè)的指令。
[0115]本實(shí)施例中,在一個(gè)網(wǎng)頁(yè)出現(xiàn)阻塞時(shí),在原有的消息循環(huán)中嵌入新的消息循環(huán),由新的消息循環(huán)處理其他網(wǎng)頁(yè)的指令,可以在一個(gè)網(wǎng)頁(yè)被阻塞時(shí)不影響其他網(wǎng)頁(yè)的運(yùn)行,提升網(wǎng)頁(yè)運(yùn)行效率。
[0116]需要說(shuō)明的是,在本發(fā)明的描述中,術(shù)語(yǔ)“第一”、“第二”等僅用于描述目的,而不能理解為指示或暗示相對(duì)重要性。此外,在本發(fā)明的描述中,除非另有說(shuō)明,“多個(gè)”的含義是兩個(gè)或兩個(gè)以上。
[0117]流程圖中或在此以其他方式描述的任何過(guò)程或方法描述可以被理解為,表示包括一個(gè)或更多個(gè)用于實(shí)現(xiàn)特定邏輯功能或過(guò)程的步驟的可執(zhí)行指令的代碼的模塊、片段或部分,并且本發(fā)明的優(yōu)選實(shí)施方式的范圍包括另外的實(shí)現(xiàn),其中可以不按所示出或討論的順序,包括根據(jù)所涉及的功能按基本同時(shí)的方式或按相反的順序,來(lái)執(zhí)行功能,這應(yīng)被本發(fā)明的實(shí)施例所屬【技術(shù)領(lǐng)域】的技術(shù)人員所理解。
[0118]應(yīng)當(dāng)理解,本發(fā)明的各部分可以用硬件、軟件、固件或它們的組合來(lái)實(shí)現(xiàn)。在上述實(shí)施方式中,多個(gè)步驟或方法可以用存儲(chǔ)在存儲(chǔ)器中且由合適的指令執(zhí)行系統(tǒng)執(zhí)行的軟件或固件來(lái)實(shí)現(xiàn)。例如,如果用硬件來(lái)實(shí)現(xiàn),和在另一實(shí)施方式中一樣,可用本領(lǐng)域公知的下列技術(shù)中的任一項(xiàng)或他們的組合來(lái)實(shí)現(xiàn):具有用于對(duì)數(shù)據(jù)信號(hào)實(shí)現(xiàn)邏輯功能的邏輯門(mén)電路的離散邏輯電路,具有合適的組合邏輯門(mén)電路的專(zhuān)用集成電路,可編程門(mén)陣列(PGA),現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)等。
[0119]本【技術(shù)領(lǐng)域】的普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法攜帶的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),包括方法實(shí)施例的步驟之一或其組合。
[0120]此外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理模塊中,也可以是各個(gè)單元單獨(dú)物理存在,也可以?xún)蓚€(gè)或兩個(gè)以上單元集成在一個(gè)模塊中。上述集成的模塊既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能模塊的形式實(shí)現(xiàn)。所述集成的模塊如果以軟件功能模塊的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷(xiāo)售或使用時(shí),也可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。
[0121 ] 上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤(pán)或光盤(pán)等。
[0122]在本說(shuō)明書(shū)的描述中,參考術(shù)語(yǔ)“一個(gè)實(shí)施例”、“一些實(shí)施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實(shí)施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)包含于本發(fā)明的至少一個(gè)實(shí)施例或示例中。在本說(shuō)明書(shū)中,對(duì)上述術(shù)語(yǔ)的示意性表述不一定指的是相同的實(shí)施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)可以在任何的一個(gè)或多個(gè)實(shí)施例或示例中以合適的方式結(jié)合。
[0123] 盡管上面已經(jīng)示出和描述了本發(fā)明的實(shí)施例,可以理解的是,上述實(shí)施例是示例性的,不能理解為對(duì)本發(fā)明的限制,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的范圍內(nèi)可以對(duì)上述實(shí)施例進(jìn)行變化、修改、替換和變型。
【權(quán)利要求】
1.一種網(wǎng)頁(yè)處理方法,其特征在于,包括: 在通過(guò)內(nèi)核線(xiàn)程處理當(dāng)前網(wǎng)頁(yè)的過(guò)程中,監(jiān)控所述當(dāng)前網(wǎng)頁(yè)的處理狀態(tài); 當(dāng)檢測(cè)到所述當(dāng)前網(wǎng)頁(yè)處于阻塞狀態(tài)時(shí),暫停對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理; 并通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè),包括: 在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,忽略對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理而繼續(xù)處理所述其他網(wǎng)頁(yè)。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,還包括: 當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè),包括: 在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,再調(diào)用新的消息循環(huán),在所述新的消息循環(huán)中處理所述其他網(wǎng)頁(yè)。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,還包括: 當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),退出所述新的消息循環(huán),并在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
6.一種網(wǎng)頁(yè)處理裝置,其特征在于,包括: 監(jiān)控模塊,用于在通過(guò)內(nèi)核線(xiàn)程處理當(dāng)前網(wǎng)頁(yè)的過(guò)程中,監(jiān)控所述當(dāng)前網(wǎng)頁(yè)的處理狀態(tài); 檢測(cè)模塊,用于當(dāng)檢測(cè)到所述當(dāng)前網(wǎng)頁(yè)處于阻塞狀態(tài)時(shí),暫停對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理; 處理模塊,用于通過(guò)所述內(nèi)核線(xiàn)程繼續(xù)處理與所述當(dāng)前網(wǎng)頁(yè)屬于同一個(gè)所述內(nèi)核線(xiàn)程的其他網(wǎng)頁(yè)。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述處理模塊包括第一單元,所述第一單元用于在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,忽略對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理而繼續(xù)處理所述其他網(wǎng)頁(yè)。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述處理模塊還包括第二單元,所述第二單元用于當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
9.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述處理模塊包括第三單元,所述第三單元用于在所述內(nèi)核線(xiàn)程調(diào)用的原有消息循環(huán)中,再調(diào)用新的消息循環(huán),在所述新的消息循環(huán)中處理所述其他網(wǎng)頁(yè)。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述處理模塊還包括第四單元,所述第四單元用于當(dāng)接收到表明所述當(dāng)前網(wǎng)頁(yè)不再處于阻塞狀態(tài)的信號(hào)時(shí),退出所述新的消息循環(huán),并在所述原有消息循環(huán)中恢復(fù)對(duì)所述當(dāng)前網(wǎng)頁(yè)的處理。
【文檔編號(hào)】G06F9/44GK104252538SQ201410487995
【公開(kāi)日】2014年12月31日 申請(qǐng)日期:2014年9月22日 優(yōu)先權(quán)日:2014年9月22日
【發(fā)明者】宋章章, 關(guān)翔 申請(qǐng)人:可牛網(wǎng)絡(luò)技術(shù)(北京)有限公司