cache

igelf 2009-03-02 04:55:05
测试代码
刚打开页面
这时任务管理器里webdev.webserver.exe占用的内存有200M多

服务端添加cache

protected void Button2_Click(object sender, EventArgs e)
{
for (int i = 1; i < 1000000; i++)
{
Cache.Insert("abcdefg" + i.ToString(),"",null,DateTime.Now.AddSeconds(30),Cache.NoSlidingExpiration,CacheItemPriority.Default,null);
}
}

这时任务管理器里webdev.webserver.exe占用的内存有200M多

然后清除服务端cache

protected void Button3_Click(object sender, EventArgs e)
{
for (int i = 1; i < 1000000; i++)
{
Cache.Remove("abcdefg" + i.ToString());
}
}

查看任务管理器里webdev.webserver.exe占用的内存,还是有200M多

很郁闷为什么cache清除掉了.cache还是占这么多.而且30秒过后,内存占用也没有减少.

还有对webdev.webserver.exe不是很了解
...全文
103 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
igelf 2009-03-02
  • 打赏
  • 举报
回复
加了.GC.Collect(); 就好.
应该是它内部的机制,没这么快清除.
bj890 2009-03-02
  • 打赏
  • 举报
回复
up
SealedLove 2009-03-02
  • 打赏
  • 举报
回复
清除放在循环中,循环次数太多吧 清除的自然有点慢了阿
jiezi316 2009-03-02
  • 打赏
  • 举报
回复
估计过一会就减少了,要不手动掉下GC.Collect()?
igelf 2009-03-02
  • 打赏
  • 举报
回复

不然怎么清除..
lsgy2008 2009-03-02
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 igelf 的回复:]
引用 5 楼 dd__dd 的回复:
你清除的时候也是在循环里啊

什么意思?
[/Quote]
for (int i = 1; i < 1000000; i++)
{
Cache.Remove("abcdefg" + i.ToString());
}
是这个意思吧...清除也写在循环里.
igelf 2009-03-02
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 dd__dd 的回复:]
你清除的时候也是在循环里啊
[/Quote]
什么意思?
igelf 2009-03-02
  • 打赏
  • 举报
回复
还有要过个几分钟.再清除.内存占用才会变小
dd__dd 2009-03-02
  • 打赏
  • 举报
回复
你清除的时候也是在循环里啊
LeeeeSin 2009-03-02
  • 打赏
  • 举报
回复
igelf 2009-03-02
  • 打赏
  • 举报
回复
我清除了啊.怎么内存占用还是这么大.
dd__dd 2009-03-02
  • 打赏
  • 举报
回复
是不是你循环的次数太多了啊
igelf 2009-03-02
  • 打赏
  • 举报
回复
修改一下.刚打开时这时任务管理器里webdev.webserver.exe占用的内存有30M

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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