Thanks Adam. I will try to restructure my application using .show() and .hide().... :) :)
Thanks again. On Thu, Apr 16, 2009 at 8:01 PM, Adam Fredericks < [email protected]> wrote: > > IE7 has a dead beat garbage collector. The memory will not be reclaimed > when you destroy components. When you create an object, IE allocates > memory on the local machine to run it - destroying the object will not > reclaim that lost memory. No matter what you do, IE will not reclaim the > memory unless the browser is fully refreshed. > > IE8 fixed some of these issues, but not all of them. > > I ran into this same issue with an enterprise web application and we > almost scrapped GWT-EXT because of it, but we managed to work around it. > The memory problem is a very big one with GWT-Ext. But you are not out > of luck, because you can still work with it if you are creative with > your interfaces and very conservative about of objects/elements you use. > > The most important thing to remember is NEVER destroy anything - only > HIDE things and re-use them. And be especially careful with windows and > tab panels. > > Another way I have seen it rectified is more architecture based. If you > base your entire application in frames you can refresh pieces of the > frameset and it will reclaim the memory used by the widget in that > frame. That is very complicated though. > > .hide() and .show() are your friends... > > Adam > > -----Original Message----- > From: [email protected] [mailto:[email protected]] On > Behalf Of kk > Sent: Thursday, April 16, 2009 2:21 AM > To: GWT-Ext Developer Forum > Subject: TabPanel Memory Issue > > > Hi, > > I have a gwt-ext tab panel that dynamically creates tabs. These tabs > can contain multiple gwt-ext widgets. When I try to close these tabs, > I notice that the memory indicated via the task manager of Internet > explorer does not decrease. > My question is: Should/Would IE7 free up the memory when we close > these tabs? > > I have tried to manually destroy the tabs by overriding the > doBeforeRemove() method and calling the panel.destroy() method there, > but it does not free up memory. > > We are overridding the following method in the PanelListenerAdapter of > the TabPanel > @Override > public boolean doBeforeRemove(Container self, Component component) { > Panel pp = appTabPanel.getItem(component.getId()); > if(pp != null){ > // Attempting to destroy/remove the tab > pp.destroy(); > pp.removeAll(true); > pp.removeFromParent(); > pp = null; > } > return true; > } > > Any help would be appreciated. > > > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "GWT-Ext Developer Forum" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/gwt-ext?hl=en -~----------~----~----~----~------~----~------~--~---
