基於ExtJS 3.1記憶體回收改進

來源:互聯網
上載者:User

使用了ExtJS 3.1並且更改了模組載入方式之後,我的OPOA記憶體回收有所改進,記錄一下概要:

1、不用autoload{url:url, scripts:true}的方式,而使用eval(response.responseText)方式,這樣可以減少一些Orphan Node,使用autoload的話Tab中被load的那個Node無法釋放而成為Orphan Node;

2、在關閉Tab時,Tab的beforedestroy要把Tab裡面的Component給destroy掉,並且要十分注意destroy的順序,然後set null,其它沒有destroy()方法的對象直接set null,最後try CollectGarbage();

3、左側的TreePanel的tools中refresh很有用,tree的root.reload()之後IE可能會重新渲染頁面,如果之前頁面渲染佔用的記憶體多話則可能釋放多出的記憶體佔用(覺得類似IE6的視窗最小化,這裡只是憑感覺,沒看代碼也沒看IE的渲染機制);

4、GridPanel組件的有個<A style="TOP: 0px;LEFT: 0px" class="grid3-focus" tabIndex=-1 id=...></A>關閉Tab之後會成為Orphan Node,再開啟一個包含GridPanel的Tab之後就沒了,但是還會重建一個id不同的;

5、非IE瀏覽器下右鍵菜單和瀏覽器右鍵菜單有衝突。




sIEve看記憶體佔用:


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.