急请教:利用Timer、UpdatePanel局部刷新,IE占用内存不断增长!

Irismay 2011-01-25 05:28:17
我利用asp.net WebForm写需要实时刷新大量数据方面的网站,遇到客户端IE浏览器内存泄漏问题,请各位前辈高手帮忙看看如何解决?感谢先:)

我实时刷新数据的页面类似于下面的简单测试代码,就是几秒钟就需要刷新几十或更多的数据。通过任务管理器看到IE内存占用不断增长。页面放久了,就内存溢出了。

Default.aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:UpdatePanel ID="UpdatePanel1" runat="server" >
<ContentTemplate>
<asp:Timer ID="Timer1" runat="server" Interval="100" OnTick="Timer1_Tick" />
<div>
<asp:Label ID="Label1" runat="server" Text="你好" />
</div>
</ContentTemplate>
</asp:UpdatePanel>
</form>
</body>
</html>


Default.aspx.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{ }

protected void Timer1_Tick(object sender, EventArgs e)
{
Label1.Text = "(Ajax.net)现在时间:" + DateTime.Now.ToString();
}
}


【简单示例中Timer Tick 间隔设“100”只为了突出内存增长这个问题】

如上所示,我只利用了asp.net中的UpdataPanel、Timer等服务端控件进行编程,自己没有手工编写任何客户端javascript代码。运行网页随着数据刷新,IE、Safari、Chrome浏览器所耗内存不断攀升,Firefox呈周期性上下浮动平均起来基本不增加。


...全文
224 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
用前端AJAX吧。
孟子E章 2011-01-25
  • 打赏
  • 举报
回复
请不要一个问题发多个帖子,这样不利于问题的解决,还有倒分的嫌疑
Irismay 2011-01-25
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 tcwsyt 的回复:]
去.NET区吧。
[/Quote]
第一次发贴不太清楚地区,多谢提醒!
灬上海爽爷 2011-01-25
  • 打赏
  • 举报
回复
去.NET区吧。

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧