I can confirm that IE8 is far and away better than IE6 and IE7, and is actually 
quicker than FF3 in our Qooxdoo app.  We're using 0.7.4.  If it's at all 
possible to upgrade to IE8, I strongly recommend that you do so.  :)

IE6 and IE7 have memory leaks caused by circular references between JS objects 
and DOM objects, because they are tracked by different "garbage collectors" (I 
use that term loosely).  IE8 still has some memory leaks, most visible for 
long-running applications.  I found this page just this morning while 
investigating memory leaks in our application:

http://www.outofhanwell.com/ieleak/index.php?title=Fixing_Leaks

The most interesting tidbit on that page is the section titled "Pseudo-Leaks".

<quote>

Sometimes Internet Explorer keeps items in memory after the page is done using 
them. Although these pseudo-leaks are freed after the user leaves the page, 
some web pages may be open for long periods of time.

To avoid pseudo-leaks, do not use removeChild to remove elements. Instead, set 
the parent's innerHTML to "" or use a function like this:

    function discardElement(element) {
        var garbageBin = document.getElementById('IELeakGarbageBin');
        if (!garbageBin) {
            garbageBin = document.createElement('DIV');
            garbageBin.id = 'IELeakGarbageBin';
            garbageBin.style.display = 'none';
            document.body.appendChild(garbageBin);
        }

        // move the element to the garbage bin
        garbageBin.appendChild(element);
        garbageBin.innerHTML = '';
    }

</quote>

Adapting the above technique, I got rid of a 3Mb memory leak from our use of 
qx.ui.embed.HtmlEmbed.  I suspect that the virtual table cells created for 
qx.ui.table.Table also suffer from this pseudo-leak, but I haven't fully 
investigated yet.  This technique is probably something that can be adapted to 
the qooxdoo framework by placing code in the destructor of qx.ui.core.Widget.  
(Disclaimer, only using Qooxdoo 0.7.4, not sure which classes have changed in 
0.8.X)


Bryan

-----Original Message-----
From: Jim Hunter [mailto:[email protected]] 
Sent: Monday, April 20, 2009 11:46 AM
To: qooxdoo Development
Subject: Re: [qooxdoo-devel] Internet Explorer performance

I can confirm that the JavaScript engine in IE is horribly slow
compared to any other browser. Reusing objects helps dramatically
because IE is also horrible at freeing memory. Even if you clear all
your objects out, IE may never release them. It is so bad, that not
even closing the page and reopening it helps. I have found the memory
usage to be so bad that the only way to reclaim it is to close the
browser and start over. And this has nothing to to with qooxdoo, it is
entirely an IE bug that can not be overcome with code. I have not done
drastic testing with IE8, I hope it is better then 6 & 7.

Jim


On Mon, Apr 20, 2009 at 6:37 AM, Stefan Volbers <[email protected]> wrote:
>
>
> Fabian Jakobs wrote:
>
>> IE really is so slow but there are a few things you can do:
>
>> 2. Use the build version. Some of the optimizations are especially
>> useful for IE
>
> Hi Massimo,
> see here:
>
> http://qooxdoo.org/documentation/0.8/snippets?s=mshtml
>
> for browser specific optimization (but bear in mind that it might break
> the app for other browsers).
> I cannot confirm your bad results with IE. Have had bad experiences in
> the past, too, but qooxdoo 0.8(.2) was a great improvement. BTW, which
> version are you using?
>
> Greetings,
> Stefan
>
>
> ------------------------------------------------------------------------------
> Stay on top of everything new and different, both inside and
> around Java (TM) technology - register by April 22, and save
> $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
> 300 plus technical and hands-on sessions. Register today.
> Use priority code J9JMT32. http://p.sf.net/sfu/p
> _______________________________________________
> qooxdoo-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>

------------------------------------------------------------------------------
Stay on top of everything new and different, both inside and 
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today. 
Use priority code J9JMT32. http://p.sf.net/sfu/p
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

------------------------------------------------------------------------------
Stay on top of everything new and different, both inside and 
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today. 
Use priority code J9JMT32. http://p.sf.net/sfu/p
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to