WO2011000299A1 - 一种多页面浏览器防假死方法及装置 - Google Patents
一种多页面浏览器防假死方法及装置 Download PDFInfo
- Publication number
- WO2011000299A1 WO2011000299A1 PCT/CN2010/074618 CN2010074618W WO2011000299A1 WO 2011000299 A1 WO2011000299 A1 WO 2011000299A1 CN 2010074618 W CN2010074618 W CN 2010074618W WO 2011000299 A1 WO2011000299 A1 WO 2011000299A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- window
- page
- main frame
- parent
- page window
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/954—Navigation, e.g. using categorised browsing
Definitions
- the present invention relates to the field of Internet browser technologies, and in particular, to an anti-fake technology of a multi-page browser.
- multi-page browsers have at least the following disadvantages: Since a multi-page browser is a whole, if a page is suspended, the entire browser will be suspended, so that the entire browser cannot click any button, if you want to open a new one. The window can only restart the browser, which brings great inconvenience to the user on the user's physical examination.
- the suspended animation refers to a state in which the browser has a problem, which is a state in which the interface is not refreshed, and any button is clicked without response, and no operation can be performed.
- the existing anti-browser technology is only an anti-fake solution for Chrome browser, and Chrome browser uses a windowless way of page rendering.
- the page has no window at all, and it will not cause suspended animation. . Therefore, the prior art does not have a perfect solution to the multi-page browser suspended animation, and the anti-fake death problem of the multi-page browser is an urgent problem to be solved.
- the embodiment of the invention provides a multi-page browser anti-fake method and device, which effectively prevents the problem of suspended animation of the entire browser caused by a page suspended animation.
- Embodiments of the present invention provide a multi-page browser anti-fake method, including:
- the page window that removes the parent-child relationship communicates with the main frame window asynchronously.
- the performance of the parent-child relationship is simulated between the page window from which the parent-child relationship is removed and the main frame window.
- the performance of the simulated parent-child relationship includes:
- the page window is moved, resized, displayed, or hidden accordingly.
- the method further includes:
- the embodiment of the invention provides a multi-page browser anti-fake device, comprising:
- a first setting unit configured to set a page window as a top-level window, and remove a parent-child relationship between the page window and the main frame window, so that the page window is level with the main frame window;
- the communication unit is configured to communicate asynchronously between the page window from which the parent-child relationship is removed and the main frame window.
- the simulation unit is configured to simulate the performance of the parent-child relationship between the page window from which the parent-child relationship is removed and the main frame window.
- the device further includes:
- a second setting unit for setting a separate thread for each page window.
- the embodiment of the present invention removes the parent-child relationship between the main frame window and the page window, and asynchronously communicates between the main frame window and the page window, so that the main frame is The window returns immediately after issuing a message, and does not wait for the processing of the page window. Even if the page window cannot respond, it has no effect on the main frame window, thereby avoiding the problem that the fake death of one page window causes the entire browser to die, effectively enhancing the user experience. .
- FIG. 1 is a schematic diagram of a parent-child window relationship in a Windows system according to an embodiment of the present invention
- FIG. 2 is a schematic diagram of an anti-fake method of a multi-page browser according to an embodiment of the present invention
- FIG. 3 is a schematic diagram of message loops after a single thread is set to multi-thread according to an embodiment of the present invention
- FIG. 4 is a schematic structural diagram of a multi-page browser anti-death device according to an embodiment of the present invention.
- the embodiment of the present invention first analyzes the reason why a multi-page browser generates a suspended animation:
- the window has a window that can be displayed to the user and is operable. That is, the user operates the mouse and the keyboard to generate various messages. Distribute to the window where the current system has focus. Only one window in the system has focus at the same time. The focus that is usually seen, such as the blinking cursor in the edit box, will be based on the different types of messages after the current focus window receives the message. Make a different response. For example, a mouse click, a mouse double click, a keyboard button, etc. will generate a message. Based on these messages, the application is continuously responsive, refreshing the interface, and completing the operation.
- the internal message processing mode of the system is: the system will continuously put the message into the message queue, and each execution thread of the window has a message loop, and the message loop continuously obtains the message from the message queue and processes the message. However, if the part that handles the message is blocked and has not been run, then the message loop cannot get a new message, and then the operation on this page will not respond. When this happens, the page will not be refreshed, because the message must be refreshed to refresh the interface, and there is no response by pressing a button, so the message loop is blocked in the message processing, and does not respond to any operation, that is, it appears. suspended animation.
- Each thread in the Windows system has a message loop, but in a single-threaded environment, multiple pages share a message loop, and blocking of a message loop can cause blocking of the entire program.
- the embodiment of the present invention sets a separate thread for each page window. That is to construct a multi-threaded environment.
- FIG. 1 there is a relationship between windows.
- FIG. 1 there is a top-level window in Figure 1, which has an item on the taskbar and a window that minimizes, maximizes, and closes the button.
- a button in the top-level window is also a window, that is, a button window in the figure, and a parent-child relationship between the top-level window and the button window is called a parent-child window.
- the connection between the parent and child windows is: when the parent window moves, the child window must also move. When the parent window is hidden, the child window must also be hidden. When the parent window is displayed, the child window must also be displayed together.
- the main frame window is the top-level window (parent window), and the page window (child window) is the relationship between the parent and child windows.
- Each page window is in one thread, and the main frame window is in one thread.
- the thread where the main frame window is located is the address bar, the toolbar where the toolbar is located, and the thread where the page window is located is the thread where the page window is located.
- some operations of the parent window are synchronized with the child window by sending a message, such as moving, when the parent window moves, a message is sent to the child window, and then the child window also moves. There is a problem here.
- the embodiment of the present invention solves the problem by removing the parent-child relationship between the page window and the main frame window and communicating asynchronously between the page window and the main frame window.
- an embodiment of the present invention provides a multi-page browser anti-fake method. Taking the example shown in FIG. 2, the method includes the following steps:
- Step 20 Set a separate thread for each page window
- This step is necessary in a single-threaded environment, and in a multi-threaded environment, this step can be omitted.
- the separate thread is set for each page window, that is, each page window is placed in a separate thread.
- each page window is placed in a separate thread, so that each page window has a message loop, when a message loop of a thread is blocked. Does not affect the message loop of other threads. In other words, when a page window is suspended, other page windows are not affected.
- a separate process is set up for each page window to further prevent a crash from occurring.
- Step 21 The page window is used as the top-level window, and the parent-child relationship between the page window and the main frame window is removed, so that the page window is level with the main frame window;
- the method of using the page window as a top-level window includes: setting an item including a minimize, maximize, and close button on a task bar of each page window.
- the page window is leveled with the main frame window, that is, the page window and the main frame window are top-level windows, and there is no parent-child relationship.
- Each window corresponds to a unique ID
- the internal module of the system records the ID and records whether the window corresponding to the ID is a page window or a main frame window, so that even if the page window and the main frame window are set to be level, which window can be distinguished internally by the system Is the page window, which window is the main frame window.
- the page window is used as the top-level window, if the page window does not respond to the main frame window, the user can choose to switch to another page window or close the page window.
- Step 22 The page window from which the parent-child relationship is removed communicates with the main frame window in an asynchronous manner.
- the asynchronous mode communication that is, the main frame window sends a message to the page window and returns immediately, without waiting for the processing of the message to be completed.
- the parent window in the prior art is synchronized with the child window (page window) by sending a synchronous message, such as moving, when the parent window moves, a message is sent to the child window, and then the child window also moves.
- a synchronous message such as moving
- the parent window will wait for the return of the message, and the parent window is also blocked, causing the thread of the parent window to be blocked, so the entire program does not respond. It is.
- the main frame window because the asynchronous communication is performed between the page window and the main frame window, the main frame window sends a message to the page window and returns immediately, without waiting for the processing of the message to be completed, so that even if the page window does not respond to the message, the main The frame window can still continue to process its own messages, thus avoiding the problem that the main frame window does not respond because the page window is not responding, and can limit the suspended animation to a page window.
- the performance of the parent-child relationship is simulated between the page window from which the parent-child relationship is removed and the main frame window.
- the performance of the simulated parent-child relationship includes: if the main frame window is moved, resized, displayed, or hidden, the page window is also moved, resized, displayed, or hidden accordingly. If the page window does not respond to the main frame window, the user can individually switch the unresponsive page window to another page window or close the unresponsive page window as needed.
- the simulation operation may be limited to being displayed between the page window and the main frame window of the user. For example, if the main frame window moves, the user manually simulates the performance of the original parent-child relationship between the main frame window and the page window, that is, the user manually moves.
- each page is placed in a separate thread, a page is suspended, other pages are not affected, and the parent-child relationship between the main frame window and the page window is removed, and the main frame window and the page window are
- the main frame window returns immediately after issuing a message, and does not wait for the processing of the page window (child window), so that if the page window cannot respond, there is no effect on the main frame window.
- Such a page window's suspended animation will not affect the operation of the main frame window, and can limit the suspended animation to the extent of a page window, effectively preventing the false death of a page window and causing the entire browser to die.
- the embodiment of the invention further provides a multi-page browser anti-fake device, as shown in FIG. 4, the device includes:
- a first setting unit 40 configured to set a page window as a top-level window, and remove a parent-child relationship between the page window and the main frame window, so that the page window is level with the main frame window;
- the communication unit 41 is configured to communicate asynchronously between the page window from which the parent-child relationship is removed and the main frame window.
- the device also includes:
- the simulation unit 42 is configured to simulate the performance of the parent-child relationship between the page window from which the parent-child relationship is removed and the main frame window.
- the performance of the simulated parent-child relationship includes: if the main frame window is moved, resized, displayed, or hidden, the page window is also moved, resized, displayed, or hidden accordingly.
- the device further includes:
- the second setting unit 43 is configured to set a separate thread for each page window, that is, to place each page in a separate thread.
- the device in the embodiment of the present invention may be installed in a device existing in the browser management system, or may be a newly added device.
- the multi-page browser anti-fake method and apparatus according to the embodiment of the present invention are applicable to any browser kernel, such as an IE kernel.
- the embodiment of the present invention removes the parent-child relationship between the main frame window and the page window, and communicates asynchronously between the main frame window and the page window, and returns immediately after the main frame window (parent window) issues a message, without waiting
- the processing of the page window (child window) so if the page window can not respond, it has no effect on the main frame window, so the fake death of a page window does not affect the operation of the main frame window; by placing each page window In a separate thread, a page window is suspended, and other page windows are not affected. Therefore, the embodiment of the present invention can limit the suspended animation to a range of a page window, thereby effectively preventing the false death of a page window and causing the entire browser to die. .
- the embodiment of the present invention removes the parent-child relationship between the main frame window and the page window, and communicates asynchronously between the main frame window and the page window, so that the main frame window returns a message immediately after the message is sent, Waiting for the processing of the page window, even if the page window can't respond, it has no effect on the main frame window, thus avoiding the problem that the fake death of one page window causes the entire browser to die, which effectively enhances the user experience.
- the readable storage medium is, for example, a read only memory (ROM), a random access memory (RAM), a magnetic disk, an optical disk, or the like.
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Digital Computer Display Output (AREA)
Description
Claims (7)
- 一种多页面浏览器防假死方法,其特征在于,包括:将页面窗口设置为顶层窗口,去掉页面窗口与主框架窗口之间的父子关系,使页面窗口与主框架窗口平级;去掉父子关系的页面窗口与主框架窗口之间通过异步方式通信。
- 如权利要求1所述的方法,其特征在于,还包括:在所述去掉父子关系的页面窗口与主框架窗口之间模拟父子关系的表现。
- 如权利要求2所述的方法,其特征在于,所述模拟父子关系的表现包括:若主框架窗口移动、改变大小、显示或隐藏,则页面窗口也相应的移动、改变大小、显示或隐藏。
- 如权利要求1、2或3所述的方法,其特征在于,还包括:在单线程环境中,为每个页面窗口设置单独的线程。
- 一种多页面浏览器防假死装置,其特征在于,包括:第一设置单元,用于将页面窗口设置为顶层窗口,去掉页面窗口与主框架窗口之间的父子关系,使页面窗口与主框架窗口平级;通信单元,用于在去掉父子关系的页面窗口与主框架窗口之间通过异步方式通信。
- 如权利要求5所述的装置,其特征在于,还包括:模拟单元,用于在所述去掉父子关系的页面窗口与主框架窗口之间模拟父子关系的表现。
- 如权利要求5或6所述的装置,其特征在于,在单线程环境中,所述装置还包括:第二设置单元,用于为每个页面窗口设置单独的线程。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2012101504/08A RU2520361C2 (ru) | 2009-07-02 | 2010-06-28 | Способ предотвращения ложной приостановки многостраничного браузера и соответствующее устройство |
BRPI1011927A BRPI1011927B1 (pt) | 2009-07-02 | 2010-06-28 | método e aparelho para impedir suspensão espúria de um navegador multipágina |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910152007.4 | 2009-07-02 | ||
CN2009101520074A CN101609470B (zh) | 2009-07-02 | 2009-07-02 | 一种多页面浏览器防假死方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2011000299A1 true WO2011000299A1 (zh) | 2011-01-06 |
Family
ID=41483224
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2010/074618 WO2011000299A1 (zh) | 2009-07-02 | 2010-06-28 | 一种多页面浏览器防假死方法及装置 |
Country Status (4)
Country | Link |
---|---|
CN (1) | CN101609470B (zh) |
BR (1) | BRPI1011927B1 (zh) |
RU (1) | RU2520361C2 (zh) |
WO (1) | WO2011000299A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102541564A (zh) * | 2011-12-31 | 2012-07-04 | 东软集团股份有限公司 | 一种ui复用方法及装置 |
CN102722559A (zh) * | 2012-05-31 | 2012-10-10 | 奇智软件(北京)有限公司 | 一种异常页面的进程控制方法、装置和系统 |
CN105975325A (zh) * | 2016-04-22 | 2016-09-28 | 浙江工业大学 | 一种自动跳出阻塞式代码段的控制方法 |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101504658B (zh) * | 2009-01-23 | 2011-09-28 | 北京搜狗科技发展有限公司 | 一种实现多标签应用程序中进行消息交互的方法及系统 |
CN101609470B (zh) * | 2009-07-02 | 2011-08-10 | 腾讯科技(深圳)有限公司 | 一种多页面浏览器防假死方法及装置 |
CN102375758A (zh) * | 2010-08-20 | 2012-03-14 | 联芯科技有限公司 | 移动通信设备浏览器防假死方法和装置 |
CN102385594B (zh) * | 2010-08-31 | 2015-09-30 | 腾讯科技(深圳)有限公司 | 多核浏览器的内核控制方法和装置 |
CN102843394B (zh) * | 2011-06-22 | 2015-12-09 | 腾讯科技(深圳)有限公司 | 网络应用的框架装置及运行方法 |
CN103116503B (zh) * | 2011-11-17 | 2016-12-07 | 华为软件技术有限公司 | 一种多窗口的实现方法及装置 |
CN102591711B (zh) | 2011-12-29 | 2014-06-25 | 奇智软件(北京)有限公司 | 一种窗口防假死方法和装置 |
CN104035815B (zh) * | 2011-12-29 | 2017-12-12 | 北京奇虎科技有限公司 | 一种窗口防假死方法和装置 |
CN102915251B (zh) * | 2012-03-08 | 2014-06-18 | 北京金山安全软件有限公司 | 一种多页面浏览器处理消息的方法和装置 |
CN102915256B (zh) * | 2012-03-08 | 2015-02-18 | 北京金山安全软件有限公司 | 多核浏览器下的消息传递方法与装置 |
CN103377228B (zh) * | 2012-04-25 | 2016-09-07 | 阿里巴巴集团控股有限公司 | 一种用于浏览器的页面内容呈现方法及装置 |
CN103631706B (zh) * | 2012-08-27 | 2018-09-04 | 腾讯科技(深圳)有限公司 | 一种浏览器测试方法和装置 |
CN103810238A (zh) * | 2013-11-20 | 2014-05-21 | 国家电网公司 | 一种基于异步处理的大数据量Excel文件导出方法 |
CN104252538B (zh) * | 2014-09-22 | 2018-10-12 | 可牛网络技术(北京)有限公司 | 网页处理方法和装置 |
CN104572271B (zh) * | 2015-02-04 | 2018-04-13 | 北京瑞星网安技术股份有限公司 | 多标签页浏览器防假死的方法和系统 |
CN108234624A (zh) * | 2017-12-29 | 2018-06-29 | 贵阳语玩科技有限公司 | 数据请求的处理方法及系统 |
CN111045775B (zh) * | 2019-12-10 | 2023-10-27 | 北京恒泰实达科技股份有限公司 | 一种在大屏可视化系统中高效集成第三方应用程序的方法 |
CN113312192A (zh) * | 2021-06-07 | 2021-08-27 | 平安证券股份有限公司 | 基于窗口的数据同步方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0974900A2 (en) * | 1998-07-20 | 2000-01-26 | Hewlett-Packard Company | Method for communicating between frames within a web browser window |
CN101299220A (zh) * | 2008-06-24 | 2008-11-05 | 腾讯科技(深圳)有限公司 | 多页面浏览器窗口拆分方法、合并方法和多页面浏览器 |
CN101504658A (zh) * | 2009-01-23 | 2009-08-12 | 北京搜狗科技发展有限公司 | 一种实现多标签应用程序中进行消息交互的方法及系统 |
CN101609470A (zh) * | 2009-07-02 | 2009-12-23 | 腾讯科技(深圳)有限公司 | 一种多页面浏览器防假死方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7596760B2 (en) * | 2005-04-07 | 2009-09-29 | Microsoft Corporation | System and method for selecting a tab within a tabbed browser |
-
2009
- 2009-07-02 CN CN2009101520074A patent/CN101609470B/zh active Active
-
2010
- 2010-06-28 WO PCT/CN2010/074618 patent/WO2011000299A1/zh active Application Filing
- 2010-06-28 RU RU2012101504/08A patent/RU2520361C2/ru active
- 2010-06-28 BR BRPI1011927A patent/BRPI1011927B1/pt active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0974900A2 (en) * | 1998-07-20 | 2000-01-26 | Hewlett-Packard Company | Method for communicating between frames within a web browser window |
CN101299220A (zh) * | 2008-06-24 | 2008-11-05 | 腾讯科技(深圳)有限公司 | 多页面浏览器窗口拆分方法、合并方法和多页面浏览器 |
CN101504658A (zh) * | 2009-01-23 | 2009-08-12 | 北京搜狗科技发展有限公司 | 一种实现多标签应用程序中进行消息交互的方法及系统 |
CN101609470A (zh) * | 2009-07-02 | 2009-12-23 | 腾讯科技(深圳)有限公司 | 一种多页面浏览器防假死方法及装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102541564A (zh) * | 2011-12-31 | 2012-07-04 | 东软集团股份有限公司 | 一种ui复用方法及装置 |
CN102722559A (zh) * | 2012-05-31 | 2012-10-10 | 奇智软件(北京)有限公司 | 一种异常页面的进程控制方法、装置和系统 |
CN105975325A (zh) * | 2016-04-22 | 2016-09-28 | 浙江工业大学 | 一种自动跳出阻塞式代码段的控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101609470B (zh) | 2011-08-10 |
BRPI1011927A2 (pt) | 2016-04-19 |
RU2012101504A (ru) | 2013-08-10 |
RU2520361C2 (ru) | 2014-06-20 |
BRPI1011927B1 (pt) | 2020-05-05 |
CN101609470A (zh) | 2009-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2011000299A1 (zh) | 一种多页面浏览器防假死方法及装置 | |
CN105681841B (zh) | 一种基于浏览器的视频播放控制方法及系统 | |
WO2014134899A1 (zh) | 电子阅读设备及其文本信息提取与保存的方法、存储介质 | |
WO2013075440A1 (zh) | 虚拟机管理系统及方法 | |
WO2018036000A1 (zh) | 应用程序跨系统运行的方法和装置 | |
US20150067024A1 (en) | Autobatching | |
Ramachandran et al. | Space-time memory: A parallel programming abstraction for interactive multimedia applications | |
WO2019047218A1 (zh) | 一种图形化编程方法、装置、计算机存储介质及视觉系统 | |
CN107656933A (zh) | 一种语音播报方法及装置 | |
CN107368568A (zh) | 一种笔记生成的方法、装置、设备和存储介质 | |
CN102779076B (zh) | 一种浏览器中进程间通信的方法和装置 | |
CN107577478A (zh) | 一种手机软件上线方法及系统 | |
Guo et al. | The effects of continuous conversation and task complexity on usability of an AI-based conversational agent in smart home environments | |
CN103778488A (zh) | 一种考核系统 | |
Yu et al. | The development of online examination system based on B/S structure | |
CN206332773U (zh) | 舆情展示装置 | |
WO2017143511A1 (zh) | 智能手表的睡眠检测方法及系统 | |
Guerraoui | What object-oriented distributed programming does not have to be, and what it may be | |
US5898840A (en) | Maintaining a sequential store order (SSO) in a non-SSO machine | |
WO2017120878A1 (zh) | 一种浏览网页的重启方法以及电子设备 | |
CN118210568A (zh) | 一种MacOS上多个浏览器实例间同步操作的方法及装置 | |
Milev | Technological approaches for presentation of data analysis in web applications | |
JPH11143674A (ja) | 自動ページ表示装置及び自動ページ表示方法 | |
JP2022113626A (ja) | レンダリング方法、装置、電子機器及び記憶媒体 | |
CN115277376A (zh) | 灾备切换方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 10793594 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2012101504 Country of ref document: RU |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 25/05/2012) |
|
REG | Reference to national code |
Ref country code: BR Ref legal event code: B01A Ref document number: PI1011927 Country of ref document: BR |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 10793594 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: PI1011927 Country of ref document: BR Kind code of ref document: A2 Effective date: 20111230 |