簡體   English   中英

查詢單個Internet Explorer選項卡的內存使用情況

[英]Query on memory usage of a single Internet Explorer tab

我目前正在Web應用程序中尋找Internet Explorer的JavaScript內存問題。 我正在運行IE9。 我想知道以下提到的情況是否實際上是內存泄漏。

IE9將選項卡作為一個單獨的過程。

它是在Tomcat 6上運行的Java Web應用程序。該應用程序的應用程序上下文(根)為localhost:8080/MyApp

這是用例:

  1. 打開Internet Explorer,轉到登錄頁面(在登錄頁面上Windows任務中的內存
  2. 登錄到該應用程序。 內存增加到85MB。
  3. 使用該應用程序。 用法涉及從單個頁面進行AJAX調用,然后導航到不同頁面。 所有這些用法都在一個選項卡中。 現在,內存消耗增加到150MB。
  4. 現在,我們注銷該應用程序,回到登錄頁面。 內存使用量下降到130MB。 但是理想情況下,它應該等於我們第一次進入登錄頁面時的內存使用量(43MB),如果我們再次登錄,則內存使用量應從130MB開始。 Firefox或chrome不會發生這種情況。

我嘗試了將IE用於Facebook和Gmail的類似用例。 我得到類似的結果。

我想知道此用例是否指出了腳本中的內存泄漏,或者這是IE如何管理單個選項卡的內存。

我也在代碼中尋找內存泄漏模式,但是請告訴我這種情況。

確實,JS中的內存管理超出了您的控制范圍,並且查找內存泄漏非常棘手。 關於這個主題有很多神話和誤解,遍布整個網絡。
不過,我前段時間已經問過一個關於這個主題的問題 ,並且我發現內存泄漏並不像某些人聲稱的那樣普遍。 即使在IE8中!

如果要在IE中分析頁面,並更詳細地查看內存使用情況,則可以使用IEJSLeaksDetector 在鏈接的頁面上,您可以下載版本2.0.1.1 ...

另請注意,注銷將永遠不會完全取消分配所要求的所有內存。 瀏覽器出於各種原因(例如,緩存圖像,腳本等)聲明內存。 檢查泄漏的最佳方法是:關閉選項卡,查看其效果。 關閉瀏覽器窗口,檢查釋放了多少內存。
無論您做什么工作,或使用哪種瀏覽器,當今操作系統的內存泄漏都是不可避免的。 某些泄漏是由JS引起的,而有些則不是。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM