我想知道是否有办法驱逐/清除会话,即使是我使用SQLite。
我有很多想要保存的数据,并在一个事务中提交所有数据。 我在每次保存后使用session.flush()然后使用session.evict(),但是ram仍然会升高并且存在溢出。
有什么想法吗? 非常感谢。
答案 0 :(得分:0)
由于以下原因,您需要在Session.Abandon之前使用Session.Clear()
Session.Clear()将清除所有键的值,但不会导致会话结束事件触发。
Session.Abandon()不会清除当前请求的值。如果请求另一个页面,则该值将消失。然而,放弃将抛出事件。
最好使用Session.Clear()而不是使用Session.Abandon(),因为在调用Session.Abandon()之后,会话中的值仍然存在,但在调用Session.Clear()后删除。
答案 1 :(得分:0)
插入大量记录时,您应该使用IStatelessSession
。