0

我正在使用会话学习 ASP.Net 中的状态管理。我最近使用了 proc ASP.Net 会话状态服务器来存储我的应用程序的会话数据。我想知道的是,如果 asp.net 会话状态服务器中的会话被放弃,它会发生什么。asp.net 会话状态服务器端如何管理内存。我观察到的行为如下:最初在我的应用程序中创建会话之前,我通过 Windows 任务管理器检查了 asp.net 会话状态进程正在消耗的内存。大约 2300 KB。然后我在我的应用程序中创建了一个会话,对其进行序列化并添加了大量数据,之后asp.net会话状态进程内存增加到大约4700 KB。现在我尝试删除、清除和放弃(Session. Abandon()) 会话,但 asp.net 会话状态进程消耗的内存并没有减少,它保持在 4300 左右。你能告诉我是否有任何显式的内存管理步骤要遵循 out of proc 会话或者我错过了这里的任何基本步骤。asp.net 会话状态进程如何处理此内存?如果不是,我该如何管理它?

4

1 回答 1

0

一旦您没有更多对数据的引用(包括 Session 对象),垃圾收集器就会清理它。

这是不确定的,所以你不知道什么时候会发生,但它最终会发生。

如果它从未发生过,那么您可能在某处对数据有其他引用。

于 2015-04-13T10:47:42.273 回答