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

Reply via email to