Chinaunix首页 | 论坛 | 博客
  • 博客访问: 144894
  • 博文数量: 124
  • 博客积分: 70
  • 博客等级: 民兵
  • 技术积分: 1745
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-24 13:49
文章分类

全部博文(124)

文章存档

2011年(55)

2010年(14)

2009年(30)

2008年(25)

我的朋友

分类: WINDOWS

2011-08-05 10:45:08

8.4-------------------------------------------

 解决了一个内存泄漏,会导致部分dom结构无法释放,请看下面代码

 tab.domNode.appendChild(tab.page.domNode);//page的domTree先被附加到了tab上

 this._tabChat.addChild(tab);//tab在附加到document._tabChat上,导致page内部的dom无法被释放; 

解决办法就是修改顺序:

   this._tabChat.addChild(tab);//tab先加到document上

tab.domNode.appendChild(tab.page.domNode);//page再加到tab上;

 这种泄漏被称为Cross-Page-Leaks,具体资料请参考http://blog.csdn.net/tammy_zhu/article/details/6537915 

8.4下午---------------------------------------

 dojo.connect 需要小心使用:请看如下代码:dojo.connect(null, "__emotionclick", this, "_emotionClick"); 这个会在window上创建一个闭包,包含对自己 emotion (edit plugin)的引用,这个闭包是需要手工删除的,否则就会导致leak;

 修改为 this.connect(null, "__emotionclick",  "_emotionClick"); 就可以了,emotion是继承自dijit._Widget 这个框架会自动管理他的connect;

阅读(378) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~