CN104252538A - 网页处理方法和装置 - Google Patents
网页处理方法和装置 Download PDFInfo
- Publication number
- CN104252538A CN104252538A CN201410487995.9A CN201410487995A CN104252538A CN 104252538 A CN104252538 A CN 104252538A CN 201410487995 A CN201410487995 A CN 201410487995A CN 104252538 A CN104252538 A CN 104252538A
- Authority
- CN
- China
- Prior art keywords
- web page
- current web
- webpage
- kernel thread
- webpages
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/485—Resource constraint
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/486—Scheduler internals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提出一种网页处理方法和装置,该网页处理方法包括在通过内核线程处理当前网页的过程中,监控所述当前网页的处理状态;当检测到所述当前网页处于阻塞状态时,暂停对所述当前网页的处理;并通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页。该方法可以在一个网页被阻塞时不影响其他网页的运行,提升网页运行效率。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种网页处理方法和装置。
背景技术
现有的浏览器内核使用单线程模型,该单线程模型中的线程可以称为内核线程,内核线程运行在一个消息循环(loop)中,网页数据的解析、网页排版和渲染都是在该内核线程中处理。当内核线程在处理某些操作时,需要暂停某个网页的执行,并等待该网页完成某种操作后才恢复运行。例如,当网页中弹出告警对话框时,内核线程会暂停执行对该网页的操作,直到用户点击对话框上的确认按钮后,内核线程才会恢复运行对该网页的操作。
当在浏览器中打开多个网页时,所有的网页都是在同一个内核线程中处理的,当一个网页被阻塞时,其他网页也无法继续处理。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的一个目的在于提出一种网页处理方法,该方法可以在一个网页被阻塞时不影响其他网页的运行,提升网页运行效率。
本发明的另一个目的在于提出一种网页处理装置。为达到上述目的,本发明第一方面实施例提出的网页处理方法,包括:在通过内核线程处理当前网页的过程中,监控所述当前网页的处理状态;当检测到所述当前网页处于阻塞状态时,暂停对所述当前网页的处理;并通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页。
可选的,所述通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页,包括:
在所述内核线程调用的原有消息循环中,忽略对所述当前网页的处理而继续处理所述其他网页。
可选的,还包括:
当接收到表明所述当前网页不再处于阻塞状态的信号时,在所述原有消息循环中恢复对所述当前网页的处理。
可选的,所述通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页,包括:
在所述内核线程调用的原有消息循环中,再调用新的消息循环,在所述新的消息循环中处理所述其他网页。
可选的,还包括:
当接收到表明所述当前网页不再处于阻塞状态的信号时,退出所述新的消息循环,并在所述原有消息循环中恢复对所述当前网页的处理。
本发明第一方面实施例提出的网页处理方法,通过当一个网页出现阻塞后,会继续处理其他网页,可以在一个网页被阻塞时不影响其他网页的运行,提升网页运行效率。
为达到上述目的,本发明第二方面实施例提出的网页处理装置,包括:监控模块,用于在通过内核线程处理当前网页的过程中,监控所述当前网页的处理状态;检测模块,用于当检测到所述当前网页处于阻塞状态时,暂停对所述当前网页的处理;处理模块,用于通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页。
可选的,所述处理模块包括第一单元,所述第一单元用于在所述内核线程调用的原有消息循环中,忽略对所述当前网页的处理而继续处理所述其他网页。
可选的,所述处理模块还包括第二单元,所述第二单元用于当接收到表明所述当前网页不再处于阻塞状态的信号时,在所述原有消息循环中恢复对所述当前网页的处理。
可选的,所述处理模块包括第三单元,所述第三单元用于在所述内核线程调用的原有消息循环中,再调用新的消息循环,在所述新的消息循环中处理所述其他网页。
可选的,所述处理模块还包括第四单元,所述第四单元用于当接收到表明所述当前网页不再处于阻塞状态的信号时,退出所述新的消息循环,并在所述原有消息循环中恢复对所述当前网页的处理。
本发明第二方面实施例提出的网页处理装置,通过当一个网页出现阻塞后,会继续处理其他网页,可以在一个网页被阻塞时不影响其他网页的运行,提升网页运行效率。
为达到上述目的,本发明第三方面实施例提出的客户端设备,包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为客户端设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行:在通过内核线程处理当前网页的过程中,监控所述当前网页的处理状态;当检测到所述当前网页处于阻塞处于;并通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页。
可选的,所述通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页,包括:
在所述内核线程调用的原有消息循环中,忽略对所述当前网页的处理而继续处理所述其他网页。
可选的,还包括:
当接收到表明所述当前网页不再处于阻塞状态的信号时,在所述原有消息循环中恢复对所述当前网页的处理。
可选的,所述通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页,包括:
在所述内核线程调用的原有消息循环中,再调用新的消息循环,在所述新的消息循环中处理所述其他网页。
可选的,还包括:
当接收到表明所述当前网页不再处于阻塞状态的信号时,退出所述新的消息循环,并在所述原有消息循环中恢复对所述当前网页的处理。
本发明第三方面实施例提出的客户端设备,通过当一个网页出现阻塞后,会继续处理其他网页,可以在一个网页被阻塞时不影响其他网页的运行,提升网页运行效率。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是本发明一实施例提出的网页处理方法的流程示意图;
图2是本发明另一实施例提出的网页处理方法的流程示意图;
图3是本发明实施例中在消息循环中处理指令的流程示意图;
图4是本发明另一实施例提出的网页处理方法的流程示意图;
图5是本发明另一实施例提出的网页处理装置的结构示意图;
图6是本发明另一实施例提出的网页处理装置的结构示意图;
图7是本发明另一实施例提出的网页处理装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
图1为本发明一实施例提出的网页处理方法的流程示意图,该方法包括:
S11:在通过内核线程处理当前网页的过程中,监控所述当前网页的处理状态。
本实施例的执行主体可以具体是浏览器内核。
S12:当检测到所述当前网页处于阻塞状态时,暂停对所述当前网页的处理。
网页处于阻塞状态是指当存在多个网页时,其中一个网页的操作被阻塞。例如,当第一网页中的脚本(javascript)代码弹出警告(alert)对话框时,内核线程会暂停执行,直到检测到用户在第一网页上点击对话框上的确认按钮后解除阻塞。
S13:并通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页。
假设属于同一个内核线程的网页包括第一网页和第二网页,现有技术中,当如上的第一网页出现阻塞操作时,即使其他网页没有出现阻塞的状况,例如,第二网页中没有弹出警告对话框等,浏览器内核依然不会对第二网页的操作进行处理,使得第二网页出现阻塞。
而本实施例中,不对其他网页进行阻塞,而是通过所述内核线程继续处理其他网页的操作,例如继续处理第二网页中的操作。
本实施例中,当一个网页出现阻塞后,会通过所述内核线程继续处理其他网页,可以在一个网页被阻塞时不影响其他网页的运行,提升网页运行效率。
可选的,参见图2,所述通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页(S13)具体包括:
S131:在所述内核线程调用的原有消息循环中,忽略对所述当前网页的处理而继续处理所述其他网页。
其中,内核线程可以通过调用消息循环(loop)函数执行相应操作。具体的,参见图3,在消息循环中处理指令包括取指令模块31从排队序列中取出一个操作指令,之后处理模块32对取出的操作指令进行处理,当处理完一个操作指令后再取出下一个操作指令并处理,依此类推处理完所有操作指令。
现有技术中,当处理第一网页的一个操作指令时,如果该操作指令发生阻塞,需要等待用户界面(User Interface,UI)上的信号,例如需要等待用户点击确认按钮,此时,将停止取后续指令和处理,直至接收到该第一网页的UI上的信号后再进行后续取指令和处理的流程,如果其他网页的操作指令在阻塞之后的流程中,那么其他网页也出现了阻塞。
而本实施例中,将忽略对第一网页的操作而继续处理第二网页的操作,也就是说第一网页出现阻塞后,忽略该阻塞,继续从排队序列中取其他网页的指令并进行处理。
可选的,当发生阻塞的网页接收到信号后同样可以解除当前网页的阻塞,即参见图2还可以包括:
S141:当接收到表明所述当前网页不再处于阻塞状态的信号时,在所述原有消息循环中恢复对所述当前网页的处理。
例如,当接收到第一网页上的信号,如用户点击确认按钮的信号后,在原有消息循环中恢复对所述当前网页的处理,恢复对所述当前网页的处理包括处理第一网页的指令和其他网页的指令。
本实施例中,在一个网页出现阻塞时,调用的原有循环函数不停止运行,而是继续处理其他网页的指令,可以在一个网页被阻塞时不影响其他网页的运行,提升网页运行效率。
可选的,参见图4,所述继续处理与所述网页属于同一个内核线程的其他网页(S13)具体包括:
S132:在所述内核线程调用的原有消息循环中,再调用新的消息循环,在所述新的消息循环处理所述其他网页。
如上所述,内核线程可以通过调用循环函数执行相应操作。当在处理第一网页的一个操作指令时被阻塞时,可以再调用一个新的循环函数,实现循环函数的嵌套(nested loop),由该新的循环函数继续处理其他网页的操作指令,例如,采用该新的循环函数继续在排队序列中取出第二网页的操作指令并对取出的操作指令进行处理。
可以理解的是,嵌套的循环函数不限于一个,还可以是至少两个,例如,在第一循环函数中嵌套第二循环函数后,如果采用第二循环函数出现阻塞后,可以在第二循环函数中再嵌入第三循环函数。
可选的,当发生阻塞的网页接收到信号后可以退出嵌入的消息循环,即参见图4还可以包括:
S142:当接收到表明所述当前网页不再处于阻塞状态的信号时,退出所述新的消息循环,并在所述原有消息循环中恢复对所述当前网页的处理。
例如,当接收到第一网页上的信号,如用户点击确认按钮的信号后,退出新的消息循环,继续采用原有的消息循环恢复处理,恢复对所述网页的处理包括处理第一网页的指令和其他网页的指令。
本实施例中,在一个网页出现阻塞时,在原有的消息循环中嵌入新的消息循环,由新的消息循环处理其他网页的指令,可以在一个网页被阻塞时不影响其他网页的运行,提升网页运行效率。
图5是本发明另一实施例提出的网页处理装置的结构示意图,该装置50包括监控模块51、检测模块52和处理模块53。
监控模块51用于在通过内核线程处理当前网页的过程中,监控所述当前网页的处理状态。
本实施例的执行主体可以具体是浏览器内核。
检测模块52用于当检测到所述当前网页处于阻塞状态时,暂停对所述当前网页的处理。
网页处于阻塞状态是指当存在多个网页时,其中一个网页的操作被阻塞。例如,当第一网页中的脚本(javascript)代码弹出警告(alert)对话框时,内核线程会暂停执行,直到检测到用户在第一网页上点击对话框上的确认按钮后解除阻塞。
处理模块53用于通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页。
假设属于同一个内核线程的网页包括第一网页和第二网页,现有技术中,当如上的第一网页出现阻塞操作时,即使其他网页没有出现阻塞的状况,例如,第二网页中没有弹出警告对话框等,浏览器内核依然不会对第二网页的操作进行处理,使得第二网页出现阻塞。
而本实施例中,不对其他网页进行阻塞,而是通过所述内核线程继续处理其他网页的操作,例如继续处理第二网页中的操作。
本实施例中,当一个网页出现阻塞后,会通过所述内核线程继续处理其他网页,可以在一个网页被阻塞时不影响其他网页的运行,提升网页运行效率。
可选的,一个实施例中,所述处理模块53包括第一单元531,如图6所示,所述第一单元531用于在所述内核线程调用的原有消息循环中,忽略对所述当前网页的处理而继续处理所述其他网页。
其中,内核线程可以通过调用消息循环(loop)函数执行相应操作。具体的,参见图3,在消息循环中处理指令包括取指令模块31从排队序列中取出一个操作指令,之后处理模块32对取出的操作指令进行处理,当处理完一个操作指令后再取出下一个操作指令并处理,依此类推处理完所有操作指令。
现有技术中,当处理第一网页的一个操作指令时,如果该操作指令发生阻塞,需要等待用户界面(User Interface,UI)上的信号,例如需要等待用户点击确认按钮,此时,将停止取后续指令和处理,直至接收到该第一网页的UI上的信号后再进行后续取指令和处理的流程,如果其他网页的操作指令在阻塞之后的流程中,那么其他网页也出现了阻塞。
而本实施例中,将忽略对第一网页的操作而继续处理第二网页的操作,也就是说第一网页出现阻塞后,忽略该阻塞,继续从排队序列中取其他网页的指令并进行处理。
可选的,另一个实施例中,所述处理模块53还包括第二单元541,如图6所示,所述第二单元541用于当接收到表明所述当前网页不再处于阻塞状态的信号时,在所述原有消息循环中恢复对所述当前网页的处理。
例如,当接收到第一网页上的信号,如用户点击确认按钮的信号后,在原有消息循环中恢复对所述网页的处理,恢复对所述网页的处理包括处理第一网页的指令和其他网页的指令。
本实施例中,在一个网页出现阻塞时,调用的原有循环函数不停止运行,而是继续处理其他网页的指令,可以在一个网页被阻塞时不影响其他网页的运行,提升网页运行效率。
可选的,另一个实施例中,所述处理模块53包括第三单元532,如图7所示,所述第三单元532用于在所述内核线程调用的原有消息循环中,再调用新的消息循环,在所述新的消息循环中处理所述其他网页。
如上所述,内核线程可以通过调用循环函数执行相应操作。当在处理第一网页的一个操作指令时被阻塞时,可以再调用一个新的循环函数,实现循环函数的嵌套(nested loop),由该新的循环函数继续处理其他网页的操作指令,例如,采用该新的循环函数继续在排队序列中取出第二网页的操作指令并对取出的操作指令进行处理。
可以理解的是,嵌套的循环函数不限于一个,还可以是至少两个,例如,在第一循环函数中嵌套第二循环函数后,如果采用第二循环函数出现阻塞后,可以在第二循环函数中再嵌入第三循环函数。
可选的,另一个实施例中,所述处理模块53还包括第四单元542,如图7所示,所述第四单元542用于当接收到表明所述当前网页不再处于阻塞状态的信号时,退出所述新的消息循环,并在所述原有消息循环中恢复对所述当前网页的处理。
例如,当接收到第一网页上的信号,如用户点击确认按钮的信号后,退出新的消息循环,继续采用原有的消息循环恢复处理,恢复对所述网页的处理包括处理第一网页的指令和其他网页的指令。
本实施例中,在一个网页出现阻塞时,在原有的消息循环中嵌入新的消息循环,由新的消息循环处理其他网页的指令,可以在一个网页被阻塞时不影响其他网页的运行,提升网页运行效率。
本发明实施例还提供了一种客户端设备,该客户端设备包括壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为客户端设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行:
S11’:在通过内核线程处理当前网页的过程中,监控所述当前网页的处理状态。
本实施例的执行主体可以具体是浏览器内核。
S12’:当检测到所述当前网页处于阻塞状态时,暂停对所述当前网页的处理。
网页处于阻塞状态是指当存在多个网页时,其中一个网页的操作被阻塞。例如,当第一网页中的脚本(javascript)代码弹出警告(alert)对话框时,内核线程会暂停执行,直到检测到用户在第一网页上点击对话框上的确认按钮后解除阻塞。
S13’:并通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页。
假设属于同一个内核线程的网页包括第一网页和第二网页,现有技术中,当如上的第一网页出现阻塞操作时,即使其他网页没有出现阻塞的状况,例如,第二网页中没有弹出警告对话框等,浏览器内核依然不会对第二网页的操作进行处理,使得第二网页出现阻塞。
而本实施例中,不对其他网页进行阻塞,而是通过所述内核线程继续处理其他网页的操作,例如继续处理第二网页中的操作。
本实施例中,当一个网页出现阻塞后,会通过所述内核线程继续处理其他网页,可以在一个网页被阻塞时不影响其他网页的运行,提升网页运行效率。
可选的,所述通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页(S13’)具体包括:
S131’:在所述内核线程调用的原有消息循环中,忽略对所述当前网页的处理而继续处理所述其他网页。
其中,内核线程可以通过调用消息循环(loop)函数执行相应操作。具体的,在消息循环中处理指令包括取指令模块31从排队序列中取出一个操作指令,之后处理模块32对取出的操作指令进行处理,当处理完一个操作指令后再取出下一个操作指令并处理,依此类推处理完所有操作指令。
现有技术中,当处理第一网页的一个操作指令时,如果该操作指令发生阻塞,需要等待用户界面(User Interface,UI)上的信号,例如需要等待用户点击确认按钮,此时,将停止取后续指令和处理,直至接收到该第一网页的UI上的信号后再进行后续取指令和处理的流程,如果其他网页的操作指令在阻塞之后的流程中,那么其他网页也出现了阻塞。
而本实施例中,将忽略对第一网页的操作而继续处理第二网页的操作,也就是说第一网页出现阻塞后,忽略该阻塞,继续从排队序列中取其他网页的指令并进行处理。
可选的,当发生阻塞的网页接收到信号后同样可以解除当前网页的阻塞,即还可以包括:
S141’:当接收到表明所述当前网页不再处于阻塞状态的信号时,在所述原有消息循环中恢复对所述当前网页的处理。
例如,当接收到第一网页上的信号,如用户点击确认按钮的信号后,在原有消息循环中恢复对所述当前网页的处理,恢复对所述当前网页的处理包括处理第一网页的指令和其他网页的指令。
本实施例中,在一个网页出现阻塞时,调用的原有循环函数不停止运行,而是继续处理其他网页的指令,可以在一个网页被阻塞时不影响其他网页的运行,提升网页运行效率。
可选的,所述继续处理与所述网页属于同一个内核线程的其他网页(S13’)具体包括:
S132’:在所述内核线程调用的原有消息循环中,再调用新的消息循环,在所述新的消息循环处理所述其他网页。
如上所述,内核线程可以通过调用循环函数执行相应操作。当在处理第一网页的一个操作指令时被阻塞时,可以再调用一个新的循环函数,实现循环函数的嵌套(nested loop),由该新的循环函数继续处理其他网页的操作指令,例如,采用该新的循环函数继续在排队序列中取出第二网页的操作指令并对取出的操作指令进行处理。
可以理解的是,嵌套的循环函数不限于一个,还可以是至少两个,例如,在第一循环函数中嵌套第二循环函数后,如果采用第二循环函数出现阻塞后,可以在第二循环函数中再嵌入第三循环函数。
可选的,当发生阻塞的网页接收到信号后可以退出嵌入的消息循环,即还可以包括:
S142’:当接收到表明所述当前网页不再处于阻塞状态的信号时,退出所述新的消息循环,并在所述原有消息循环中恢复对所述当前网页的处理。
例如,当接收到第一网页上的信号,如用户点击确认按钮的信号后,退出新的消息循环,继续采用原有的消息循环恢复处理,恢复对所述网页的处理包括处理第一网页的指令和其他网页的指令。
本实施例中,在一个网页出现阻塞时,在原有的消息循环中嵌入新的消息循环,由新的消息循环处理其他网页的指令,可以在一个网页被阻塞时不影响其他网页的运行,提升网页运行效率。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种网页处理方法,其特征在于,包括:
在通过内核线程处理当前网页的过程中,监控所述当前网页的处理状态;
当检测到所述当前网页处于阻塞状态时,暂停对所述当前网页的处理;
并通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页。
2.根据权利要求1所述的方法,其特征在于,所述通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页,包括:
在所述内核线程调用的原有消息循环中,忽略对所述当前网页的处理而继续处理所述其他网页。
3.根据权利要求2所述的方法,其特征在于,还包括:
当接收到表明所述当前网页不再处于阻塞状态的信号时,在所述原有消息循环中恢复对所述当前网页的处理。
4.根据权利要求1所述的方法,其特征在于,所述通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页,包括:
在所述内核线程调用的原有消息循环中,再调用新的消息循环,在所述新的消息循环中处理所述其他网页。
5.根据权利要求4所述的方法,其特征在于,还包括:
当接收到表明所述当前网页不再处于阻塞状态的信号时,退出所述新的消息循环,并在所述原有消息循环中恢复对所述当前网页的处理。
6.一种网页处理装置,其特征在于,包括:
监控模块,用于在通过内核线程处理当前网页的过程中,监控所述当前网页的处理状态;
检测模块,用于当检测到所述当前网页处于阻塞状态时,暂停对所述当前网页的处理;
处理模块,用于通过所述内核线程继续处理与所述当前网页属于同一个所述内核线程的其他网页。
7.根据权利要求6所述的装置,其特征在于,所述处理模块包括第一单元,所述第一单元用于在所述内核线程调用的原有消息循环中,忽略对所述当前网页的处理而继续处理所述其他网页。
8.根据权利要求7所述的装置,其特征在于,所述处理模块还包括第二单元,所述第二单元用于当接收到表明所述当前网页不再处于阻塞状态的信号时,在所述原有消息循环中恢复对所述当前网页的处理。
9.根据权利要求6所述的装置,其特征在于,所述处理模块包括第三单元,所述第三单元用于在所述内核线程调用的原有消息循环中,再调用新的消息循环,在所述新的消息循环中处理所述其他网页。
10.根据权利要求9所述的装置,其特征在于,所述处理模块还包括第四单元,所述第四单元用于当接收到表明所述当前网页不再处于阻塞状态的信号时,退出所述新的消息循环,并在所述原有消息循环中恢复对所述当前网页的处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410487995.9A CN104252538B (zh) | 2014-09-22 | 2014-09-22 | 网页处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410487995.9A CN104252538B (zh) | 2014-09-22 | 2014-09-22 | 网页处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104252538A true CN104252538A (zh) | 2014-12-31 |
CN104252538B CN104252538B (zh) | 2018-10-12 |
Family
ID=52187428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410487995.9A Active CN104252538B (zh) | 2014-09-22 | 2014-09-22 | 网页处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104252538B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106293634A (zh) * | 2015-05-13 | 2017-01-04 | 阿里巴巴集团控股有限公司 | 数据处理的方法及系统 |
CN107193539A (zh) * | 2016-03-14 | 2017-09-22 | 北京京东尚科信息技术有限公司 | 多线程并发处理方法和多线程并发处理系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1794185A (zh) * | 2005-12-30 | 2006-06-28 | 北京金山软件有限公司 | 一种多线程处理中的资源调用方法 |
CN1811719A (zh) * | 2006-02-22 | 2006-08-02 | 福建师范大学 | 一种单线程微处理器的死锁检测与干预方法 |
CN101504658A (zh) * | 2009-01-23 | 2009-08-12 | 北京搜狗科技发展有限公司 | 一种实现多标签应用程序中进行消息交互的方法及系统 |
CN101609470A (zh) * | 2009-07-02 | 2009-12-23 | 腾讯科技(深圳)有限公司 | 一种多页面浏览器防假死方法及装置 |
US20110282938A1 (en) * | 2010-05-12 | 2011-11-17 | Electronics And Telecommunications Research Institute | Method of providing seamless interoperability between web browser and application in single-threaded environment and apparatus for performing the same |
CN102915251A (zh) * | 2012-03-08 | 2013-02-06 | 北京金山安全软件有限公司 | 一种多页面浏览器处理消息的方法和装置 |
US8495166B2 (en) * | 2010-04-21 | 2013-07-23 | Microsoft Corporation | Optimized caching for large data requests |
-
2014
- 2014-09-22 CN CN201410487995.9A patent/CN104252538B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1794185A (zh) * | 2005-12-30 | 2006-06-28 | 北京金山软件有限公司 | 一种多线程处理中的资源调用方法 |
CN1811719A (zh) * | 2006-02-22 | 2006-08-02 | 福建师范大学 | 一种单线程微处理器的死锁检测与干预方法 |
CN101504658A (zh) * | 2009-01-23 | 2009-08-12 | 北京搜狗科技发展有限公司 | 一种实现多标签应用程序中进行消息交互的方法及系统 |
CN101609470A (zh) * | 2009-07-02 | 2009-12-23 | 腾讯科技(深圳)有限公司 | 一种多页面浏览器防假死方法及装置 |
US8495166B2 (en) * | 2010-04-21 | 2013-07-23 | Microsoft Corporation | Optimized caching for large data requests |
US20110282938A1 (en) * | 2010-05-12 | 2011-11-17 | Electronics And Telecommunications Research Institute | Method of providing seamless interoperability between web browser and application in single-threaded environment and apparatus for performing the same |
CN102915251A (zh) * | 2012-03-08 | 2013-02-06 | 北京金山安全软件有限公司 | 一种多页面浏览器处理消息的方法和装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106293634A (zh) * | 2015-05-13 | 2017-01-04 | 阿里巴巴集团控股有限公司 | 数据处理的方法及系统 |
CN107193539A (zh) * | 2016-03-14 | 2017-09-22 | 北京京东尚科信息技术有限公司 | 多线程并发处理方法和多线程并发处理系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104252538B (zh) | 2018-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170212807A1 (en) | Method for detecting abnormal application and mobile terminal | |
US8468389B2 (en) | Firmware recovery system and method of baseboard management controller of computing device | |
US9720761B2 (en) | System fault detection and processing method, device, and computer readable storage medium | |
CN102819466B (zh) | 操作系统异常的处理方法及其装置 | |
CN103703454A (zh) | 按需的标签再水化 | |
CN108304275A (zh) | 一种检测安卓系统应用层异常的方法和装置 | |
CN105354131A (zh) | 一种服务程序运行的监控方法及装置 | |
CN103927239A (zh) | 一种终端设备的系统恢复方法及装置 | |
CN105117110A (zh) | 在应用程序的预设界面显示用户设备状态的方法和装置 | |
CN105224439A (zh) | 终端app的cpu占用率的检测方法、装置及终端 | |
CN113946148B (zh) | 一种基于多ecu协同控制的mcu芯片唤醒系统 | |
CN104035857A (zh) | 系统垃圾清理性能检测方法及装置 | |
CN104252538A (zh) | 网页处理方法和装置 | |
CN111382026A (zh) | 卡顿监控方法、装置、系统、存储介质和计算机设备 | |
CN106021024B (zh) | 一种用户终端停止响应提示方法及用户终端 | |
US7340594B2 (en) | Bios-level incident response system and method | |
CN105787394A (zh) | 一种硬盘数据销毁系统及方法 | |
KR102213676B1 (ko) | 산술 연산 감시 기능을 구비하는 오토사 시스템용 단말 장치 및 오토사 시스템의 산술 연산 감시 방법 | |
CN102231124B (zh) | 一种嵌入式系统任务的守护方法 | |
CN104298432A (zh) | 信息展示方法和装置 | |
CN103679024A (zh) | 病毒的处理方法及设备 | |
CN115904793A (zh) | 一种基于多核异构系统的内存转存方法、系统及芯片 | |
CN115168079A (zh) | 一种双处理器设备及其控制方法 | |
CN103150222A (zh) | 嵌入式系统异常恢复的方法和装置 | |
CN104408059A (zh) | 一种故障处理的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |