我们已经在使用"滴",以尝试并确定为什么页UpdatePanels在他们倾向于使用大量的客户端存储器。有一个网页,定期回发,我们看到0的泄漏检测到滴注。然而,当我们添加一个新小组的组合,每个DOM目,是内部的更新小组中出现泄漏(根据滴灌).

我不确定是滴是可靠的,足以报告这种事情的-报告泄漏似乎表明滴修改页面略有下降。

没有任何人有任何经验?我应该惊慌,并停止使用微软阿贾克斯?我不是上述的怀疑,但它似乎腥我就可以 坏。

此外,如果你知道的一个工具,是更好的比滴,那将是有用的。

有帮助吗?

解决方案

根据 ASP.NET 阿贾克斯在行动,p.257

只是之前的旧的标记被替换为更新HTML,所有DOM件在小组审查了用于Microsoft Ajax的行为或控制。为了避免存储器的泄漏,相关的部件与DOM元件置,然后被摧毁的时HTMl被替换。

以我所知,任何asp.net 阿贾克斯件内更新小组设置,以防止存储器的泄漏,但是其他任何东西在那里将仅仅是替换html收到。

所以如果你没有任何asp.net ajax组件的目标的容器的响应,这将是基本上相同的一个内html更换任何其他js框架/阿贾克斯的请求,所以,我要说,这仅仅是如何浏览器处理,而不是asp.net 阿贾克斯造成的这一点。

此外,虽然它可能是"泄漏",它可以通过设计,这意味着,浏览器可能没有收回dom元尚未释放他们。此外,滴可能会造成那些泄漏,因为它是附加的那些dom要素。

其他提示

这是非常可能的。这是什么,我们假定(浏览器问题,不一定Ajax).

我们的问题是现在,有了这个应用程序访问的许多人通过Citrix环境中,每个网页在不断创造DOM对象,而不是释放他们,Citrix环境中开始颠簸之后,一些使用情况。我已经看到类似的申诉网络(特别是你在哪里愚蠢的足够访问阿贾克斯网站通过Citrix),但它不会让我感觉好多了,这是预期的行为。

我想知道现在,如果任何人已经想出了一个聪明的解决方法。我们还有客户应用程序,我们在哪里使用。净"BrowserControl"访问这些网站,而不仅仅是直IE7,所以如果有谁知道一个秘密API呼吁(FreeStaleDomObjectsFTW()),我们可以利用从那结束的堆,那将是有用的。

你可以附加的 pageLoading事件的PageRequestManager类 并通过小组更新财产和去除DOM元素中的每一个。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top