当前位置首页 > 百科资料> 正文

浏览器假死

2022-06-28 08:52:01 百科资料

浏览器假死只是通俗的说法,比较准确的说法是,在网页(通常是标准通用标记语言的应用超文本标记语言)装载或者运行的过程中,多种原因造成浏览器响应变慢,甚至无法操作的状态。所以,"假死"并不是一个特定的BUG,仅仅是复杂的网络环境造成的浏览器不稳定状态。

  • 中文名称 浏览器假死
  • 准确说法 浏览器响应变慢无法操作的状态
  • 产生原因 网页代码比较复杂等
  • 防假死浏览器 360安全浏览器5.0beta版

产生原因

网页原因

  1. 网页代码比较复杂:浏览器在处理过程中会占用大量的CPU使用率和内存、造成浏览器甚至电脑失去响应;
  2. 网页代码有漏洞:大量个人网站和低质量网站代码的涌现造成对浏览标注的普遍不支持,浏览器渲染引擎在处理这些网页代码的时候会出错,比如陷入死循环等;
  3. 网页数据过多:网页含有大量需要处理的数据,造成系统繁忙,如多图页面,超长页面等;
  4. 网页控件数据过多:网页内嵌的各种控件会导致浏览器处理大量数据,造成系统繁忙。如Flash游戏,ActiveX控件等。
  5. 网页里面js代码运行耗时多,而没有用settimeout将其放到线程中运行,导致界面被阻塞,出现一定时间内的假死。

  在以上情况下,如果浏览器框架设计未考虑多页面浏览的特殊性,资源共享访问时未做适当优化,就可能会造成整个浏览器因为单个页面的处理响应过慢而变慢。

浏览器及系统原因

  1. 浏览器内核被破坏:当浏览器被篡改后可能会导致假死。
  2. 使用了多个安全工具:多个安全工具同时注入浏览器进程很可能导致页面崩溃。
  3. 安装了错误的补丁:使用管家软件打补丁时打了不适合系统的补丁,会导致频发假死、崩溃现象。
  4. 浏览器或杀毒软件进行广告过滤,某些网站的逻辑处理方面如果抗错误性未处理好,就会导致卡死。所以对杀毒软件的监控网页功能及广告过滤功能,一般不要开启。用浏览器本身的广告过滤机制副作用比较好。
  5. 浏览器本身代码的编码bug。

防假死技术及其优劣

多线程技术

  这种技术把网页放到独立的线程中执行,如Maxthon2.5.1之前的版本。这种技术会使浏览器占用的系统资源相对较少。

  IE8、Chrome采用的技术,把页面放到独立的进程中执行。

  线程和进程有何区别?简而言之,一个程序占用一个进程,而每个进程中会有多个线程。一个进程中的线程可能会互相影响或影响整个进程,而不同的进程彼此之间就不会有太大影响。

第二代防假死技术浏览器诞生

  360公司正式推出被网民寄予厚望的360安全浏览器5.0beta版。新版不仅在界面上给人以焕然一新的视觉体验,性能也进一步提升,独门秘技第二代防假死技术,更是把小编瞬间hold住了,堪称国内首款"不死"浏览器。

  360安全浏览器5.0版采用了第二代防假死技术,可以游刃有余地在复杂的浏览器运行环境中运行,并彻底杜绝浏览器假死现象,保证用户可以流畅访问网页,不受任何影响,并带给用户更稳定、流畅的上网体验。

优劣性

  以上两种技术都是通过进程,线程模型来解决,对javascript等代码造成的假死效果比较好,但只是不影响其他tab页,而对已经死了的网页,并没有办法不让其卡死。但对于Flash等控件造成的假死效果不理想。

声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net