Hi Petr, Varol

Thanks for the feedback :)

Petr, can we show that is definitive, that DOM->JS leaks have been fixed?  
Because if so then I agree that the registry can be eliminated completely.  My 
concern is that I still see leaks in IE11 that survive page refreshes and 
wouldn’t want to make the problem worse (although I can’t show that’s not a 
client problem either :( ).  

ObjectRegistry still needs to remain so that objects can have a unique hash 
code, but if we can show DOM->JS is not a problem then the central 
list-of-every-object-ever can go.

I find that with widgets, disposing is much less of a concern because either 
widgets are very rarely removed from the screen once created, or the default 
parent/child handling takes care of it.  The exception to this is things like 
ListItem etc which are routinely created and destroyed in response to user 
interactions, and this significantly complicates controller code so removing it 
from widgets also would definitely be a good thing.

John.

From:  Petr Kobalíček <kobalicek.p...@gmail.com>
Reply-To:  qooxdoo Development <qooxdoo-devel@lists.sourceforge.net>
Date:  Saturday, 2 January 2016 at 16:30
To:  qooxdoo Development <qooxdoo-devel@lists.sourceforge.net>
Subject:  Re: [qooxdoo-devel] Qooxdoo Automatic Memory Management - a proposal

I think the whole concept of ObjectRegistry should be dropped. It creates 
nothing but overhead and it's really annoying to manually dispose objects. I 
remember that these weak references to connect DOM elements and widgets were 
created more than 10 years ago to support IE6, which is now dead. There is no 
modern browser that has problem with this anymore.

On Sat, Jan 2, 2016 at 1:16 PM, Varol Okan <mym...@movingsatellites.com> wrote:
John,

I think this analysis is a great. 
I have not looked at your changes but from this e-mail they seem small.

I know that most JS developers will not actively manage the memory in their 
applications, only the good developers do, or if a memory leak is obviously 
causing harm.

If we could get this integrated in QooxDoo, maybe with a switch to enable this 
feature. E.g. It could be added as a switch during the compilation it would not 
affect existing projects unless they would chose to enable this feature.

The when version 6.0 comes around it could be enabled per default.

Cheers,

Varol :)



------------------------------------------------------------------------------
_______________________________________________
qooxdoo-devel mailing list
qooxdoo-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to