On 1/8/11, Bryan Forbes <[email protected]> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 1/8/11 2:47 AM, Garrett Smith wrote:
>> On 1/7/11, Bryan Forbes <[email protected]> wrote:
>>> -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA1
>>>
>>> On 1/6/11 5:04 PM, Garrett Smith wrote:
>>>> AFAIK MSIE closure based memory leaks was addressed in IE6 sp2.
>>>
>>> Except that IE8 can still leak with ActiveXObjects:
>>>
>>> http://www.reigndropsfall.net/demos/ie_leak/leak_activexobject.html
>>>
>> You are using a meta refresh as a test to see if more memory is
>> consumed on each refresh? A test for a memory leak must navigate
>> between two or more pages.
>
> If that is true, how do you explain memory consumption increasing as the
> page refreshes and it only being freed when the browser (not the tab) is
> closed (closing the tab doesn't free the memory)?  To me, that
> constitutes a memory leak.
>
Closing the tab does not free up memory? Oh that's no good.

The user continuously reloading the page over and over again sounds
like a really uncommon use case. One or two refreshes is plausible and
closing a tab is definitely a common case. These should not create
problems.

[...]
>
> This site also says:

[...]
> and:
>
> "In Internet Explorer 8, the JScript garbage collector treats DOM
> objects referenced by JScript objects as JScript objects. Rather than
> wait until page navigation as in Internet Explorer 7 or process
> termination as in Internet Explorer 6, the garbage collector manages the
> lifetime of these DOM objects and breaks circular references whenever
> possible throughout the lifetime of the site."
>
> So, it would seem that the IE8 GC should be cleaning up DOM objects all
> the time; this is proven by my DOM leak tests that only leak in an
> unpatched IE6.  However, the MSDN article says nothing about
> ActiveXObjects, which is what the link I gave you is testing.  It also
> shouldn't matter whether the page is navigated away from or refreshed:
> there should be no leak.  Remember, I'm referring only to IE8.
>

OK, right.

>> Though if I'm not mistaken, that patch landed in IE6 sp2:
>> http://novemberborn.net/2007/06/javascriptmemory-leaks-gone-115
>
> That patch may have landed, but has everyone upgraded to SP2?  The MSDN
> article you linked earlier clearly states:
>
Pirated versions of Windows might not have SP2. Unless they're
disconnected from the net, wouldn't most others have that update?

> "Although Web developers should be aware of memory leaks created by use
> of programming patterns such as JScript closures in Internet Explorer 7
> and earlier, those patterns no longer result in leaks in Internet
> Explorer 8."
>
> To me, that says that we should still be programming for the leaks that
> are present in IE6 and 7 since Microsoft has not announced and EOL for
> IE6, let alone IE7.
>
You've got a point there.
-- 
Garrett

-- 
To view archived discussions from the original JSMentors Mailman list: 
http://www.mail-archive.com/[email protected]/

To search via a non-Google archive, visit here: 
http://www.mail-archive.com/[email protected]/

To unsubscribe from this group, send email to
[email protected]

Reply via email to