Looks great!
Could you please provide a patch. And please try to keep the old logic
(disposer debug). I will add this to SVN as soon as I get your patch.
Sebastian
Dietrich Streifert schrieb:
> Hello Everybody,
>
> I'm posting it again because its maybe getting lost in the long thread
> before.
>
> After some fiddeling I found this combination of the disposer methods to
> be about 5 times faster then the version in Object.js.
>
> One change is that in the class method dispose there is just a call to
> dispose if the object has the attribute _disposed = false and the entry
> of the object in the _db array is nullyfied just in the dispose instance
> method not a second time in the dispose class method.
>
> Another change was to do just assignments with null and not calling the
> delete operator.
>
> Please have a look if I missed something here. If it is ok I'll be happy
> to provide a patch.
>
> qx.core.Object.prototype.dispose = function() {
> if (this.getDisposed()) {
> return;
> }
>
> // Dispose user data
> if (this._userData)
> {
> for(var vKey in this._userData) {
> this._userData[vKey] = null;
> }
>
> this._userData = null;
> }
>
> // Finally cleanup properties
> if (this._objectproperties)
> {
> var a = this._objectproperties.split(qx.constant.Core.COMMA);
> var i, l;
> for (i=0, l=a.length; i<l; i++) {
> this[qx.OO.values[a[i]]] = null;
> }
>
> this._objectproperties = null;
> }
>
> // Delete Entry from Object DB
> //
> qx.core.Object._db[this._hashCode] = null;
>
> this._disposed = true;
> }
>
> qx.core.Object.dispose = function()
> {
> var vObject;
>
> for (var i=qx.core.Object._db.length-1; i>=0; i--)
> {
> vObject = qx.core.Object._db[i];
>
> if (vObject != null && vObject._disposed === false )
> {
> vObject.dispose();
> }
> }
> }
>
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel