操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊

    如果一個用戶來訪問你的網站,但是瀏覽器馬上就崩潰了,這是用戶所不能容忍的,也會給用戶帶來反感。所以在此,本人總結了一些導致瀏覽器崩潰的原因,希望對大家有所幫助。

    1.內存泄漏

    內存泄漏導致網站崩潰的情況有兩種,一種是服務器的崩潰,另一種是瀏覽器的崩潰。內存泄漏的現象是顯而易見的,其原因是操作系統提供給所有進程的存儲空間被一個進程榨干了,最終結果是,進程運行的時間越長,占用的存儲空間越大,最后用盡全部存儲空間,導致整個系統崩潰,之后才會清空內存。

    服務器: 對于C/C++的來說,系統中存在無法回收的內存,有時候會引起內存不足,更嚴重的則是系統崩潰。而對于java來說,系統中存在一些已分配內存但是沒有被使用的對象,這些對象也不能被GC回收,一直占用著內存。

    客戶端:的內存泄漏也有可能導致瀏覽器崩潰。是一種垃圾回收式( ,簡稱GC)語言。這也就是說,內存是根據對象的創建而分配給對象的,并會在對象沒有被引用的時候由瀏覽器回收。但是,并非純粹的垃圾回收式語言,瀏覽器還使用引用計數來為對象(如:DOM、 )處理內存。在引用計數中,每個被引用的對象都會保留一個計數,這樣就可以獲悉當前有多少對象正在引用它。如果計數為零的對象就會被銷毀,其內存也會被收回。當對象相互引用時,就構成了循環引用,由于存在相互引用系統瀏覽器崩潰是什么原因,所以相互引用的對象無法被銷毀(引用計數不為零)。瀏覽器無法處理對象和對象的相互引用,所以當出現此情況的時候就會出現內存泄漏。通過下面的一個例子你就可以理解造成的內存泄漏問題。

    window.onload = function(){
        // JavaScript對象到DOM對象的引用
        var obj=document.getElementById("DivElement");
      // DOM 對象到JavaScript 對象的引用
      document.getElementById("DivElement").expandoProperty=obj;
    };

    以上例子可以看出,對象和DOM對象存在相互引用,這就構成了循環引用,而DOM對象是引用計數管理的,所以兩個對象都不能被銷毀。

    另外一種情況則是出現在閉包中,當碰到閉包,我們在對象上綁定事件響應代碼時,很容易制造出 Leak。其關鍵原因和前者是一樣的,也是一個跨對象和對象的循環引用。只是代碼更為隱蔽。

    window.onload = function AttachEvents(element){
      //element有個引用指向函數ClickEventHandler()
      element.attachEvent( " onclick " , ClickEventHandler);
    function ClickEventHandler(){
         //該函數有個引用指向AttachEvents(element)
       //也就是執行了參數element。
      }
    }

    這里簡單理解了造成內存泄漏的原因,內存泄漏加大瀏覽器的負擔,很有可能導致瀏覽器崩潰,我們要做的就是盡量去避免這種情況。處理內存泄漏最終目的還是要打破對象和對象間的循環引用或者清零引用計數,釋放對象。

    2. 網頁代碼不規范和瀏覽器bug

    大量個人網站和低質量網站代碼的涌現造成對瀏覽標準的普遍不支持,如果正好碰上瀏覽器存在的一些bug,瀏覽器渲染引擎在處理這些網頁代碼的時候會出錯,比如陷入死循環或直接崩潰等。

    HTML代碼導致網站崩潰

    
     
    
    
     

    令IE6崩潰的CSS代碼

    
    

    原因在于table中直接放置內容,在IE6會引起.dll模塊損壞而關閉瀏覽器,非IE6則安全無恙。

    如果我們在IE中遇到瀏覽器崩潰的現象,我們可以嘗試這個解決方案:為 標簽添加 zoom:1; 令其觸發。當然觸發還有很多方法,具體的這里就不詳細說明了。

    3. 網頁數據過多

    網頁含有大量需要處理的數據,造成系統繁忙,如多圖頁面,超長頁面等瀏覽器崩潰是什么原因,或者網頁內嵌的各種控件會導致瀏覽器處理大量數據,造成系統繁忙。如Flash游戲,控件等。當瀏覽器訪問網站的時候,如果網站的數據量大,會使得瀏覽器一般在處理過程中會占用很大的CPU使用率和內存、造成瀏覽器失去響應,甚至會使電腦系統死機。在網站開發的時候,如果充分考慮Web性能,很大程度上能避免這個問題。

    4. 其他原因

    除以上提到的原因之外,還有其他許多原因,雖然有些不會導致瀏覽器直接崩潰,但也會造成網站無法訪問,如日志文件導致磁盤已滿、Web服務器C指針錯誤、進程缺乏文件描述符、線程死鎖、數據庫中的臨時表不夠用和服務器超載等.

    總結

    對于訪客,如果登錄您網站,瀏覽器就立刻崩潰,我想這對誰都是無法容忍的,通過總結網站令瀏覽器崩潰的原因,在我們從事網站開發維護的時候,我們應該盡量去避免內存泄漏、代碼錯誤和冗余及數據量過大等問題,構建更佳性能的站點。

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有