天天看點

QQ元件可導緻IE10無響應

前一陣子,我發現IE10有時候就像是假死一樣地,偶爾無響應,或者是打開網頁或者進行任何操作都奇慢無比。我當時沒有太在意,因為我家裡用的是一台舊電腦,性能不怎麼樣,以為是偶發的正常的性能問題。

可是,随着最近在網上看視訊的次數越來越多(最近Win8、Surface都釋出了嘛,好多視訊呢~),我發現這個問題越來越突出,越來越頻發,于是我想到了分析程序的等待鍊,看看IE究竟是在等待什麼。要知道,IE總是假死,并且點選了"恢複網頁"按鈕後還是死掉或者打開奇慢的話,那就真的是不正常了。

Windows 8 裡面自帶的新版任務管理器呀,就已經帶有分析程序等待鍊的功能了。以前我們可能要使用 resmon 資源螢幕來完成。

在詳細資訊裡面,我找到iexplore.exe程序,然後右擊選擇"分析等待鍊",可以看到,IE的一個或多個線程的确在等待完成網絡I/O,而在等待鍊樹狀結構中,我們可以看見,它在等待"FlashUtil_ActiveX.exe",PID為2248,可線程資訊缺失。

哈哈,沒錯,你看見的這個"FlashUtil_ActiveX.exe"就是 Windows 8 内置的 Flash 的針對IE浏覽器的插件的執行體。難怪偶爾網頁會死掉,并且不可恢複,原來是每次死的時候,都是我在用IE10看視訊。我原以為,是IE内置的這個Flash不穩定,想想也覺得有一定的可能性,因為它不論怎樣,都還是Adobe開發的(我檢視了執行體的檔案資訊)。可是發現中止它以後,沒多久還是有這個問題。我又不敢随便将其删除,以免引發Win8裡面不可預知的後果。暫且沒有做實驗研究删除它會有什麼結果、而後補裝一個Adobe下載下傳的Flash Player又是否會使引發的問題消失。各位如有測試,也歡迎告訴我。

我想,其實我當時應該直接找到這個FlashUtil的程序,然後再看看它究竟在等待什麼,也許可以看到它也在等待什麼資源,或是用WinDbg看看能否有進一步的診斷。可當問題又重制時,我再看另一個IE的程序,恰好發現該程序得到了完整詳細的等待鍊資訊:

可以清楚地看見,其實,FlashUtil_ActiveX.exe 也在等待一個線程,來自 QQExternal.exe. 噢!我這才恍然大悟,問題重制時,我的QQ的确處于運作狀态。于是,以後每次發生看Flash視訊就死網頁的情況時,我結束掉QQExternal程序,問題立馬就解決了,網頁馬上起死回生,加載出來,然後播放視訊。

可是這個QQExternal究竟是什麼呢?這我不知道,但是通過搜尋網際網路,我發現了這樣的解釋:

呵呵,有意思吧,這個程序是為了能讓網頁的Flash保持穩定的。。。的确有了它會穩定不少,穩定得一動不動。真希望該程序随時都不會出現。

本文轉自 hbycscc 51CTO部落格,原文連結:http://blog.51cto.com/mvperic/1040169

繼續閱讀