asp.net mvc 内存什么情况下才会回收?

比如每次访问花费100K,每刷新一次就会增加100K,同一个页面一直访问,一般要花几十M内存后,内存才不会上涨,但如果一直访问,内存也不会下降;如果访问另一个页面又要花几... 比如每次访问花费100K,每刷新一次就会增加100K,同一个页面一直访问,一般要花几十M内存后,内存才不会上涨,但如果一直访问,内存也不会下降;如果访问另一个页面 又要花几十M内存后,内存才不涨。
理论上来说,每次访问都是一个实例,response end 后就应该回收,mvc到底搞什么鬼?
展开
 我来答
handangaoyang
2017-12-15 · TA获得超过2242个赞
知道大有可为答主
回答量:2633
采纳率:88%
帮助的人:887万
展开全部

Response end后,只是处理请求的线程回归线程池。但是请求所产生的内容(比如对应的.cs文件),并不是立即释放。而是驻留在内存中。因为如果下次访问同样的页面,就可以把已生成的文件直接响应给请求者,省去了生成文件的时间。所以才有第一次请求慢,第二次请求快的说法。

至于何时释放内存,一般是3种情况

  1. 手动调用GC

  2. 应用服务器内存不足

  3. 应用程序卸载

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式