2011-08-23 23 views
7

Trong ứng dụng biểu mẫu Web của tôi, tôi đang sử dụng HttpContext.Current.Cache để lưu trữ một số thông tin mà các hình thức khác nhau sử dụng để tránh đi db mỗi lần.HttpContext.Current.Cache - Khi nào điều này sẽ tự động được xóa?

Câu hỏi của tôi là khi nào điều này sẽ bị xóa? Hoặc nó sẽ vẫn ở đó cho đến khi tôi gỡ bỏ nó thông qua mã hoặc khởi động lại IIS?

+0

Bạn đang nói về toàn bộ bộ nhớ cache hoặc một số mục nhất định? – Oded

+1

google là bạn của bạn ... thấy điều này và nhiều nội dung khác: http://msdn.microsoft.com/en-us/library/6hbbsfk6.aspx –

+0

@Oded, nói về, tất cả các mục trong bộ nhớ cache – Riz

Trả lời

10

Bộ nhớ cache được lưu trong bộ nhớ cho đến khi quá trình được dừng lại.

Vì vậy, việc đặt lại IIS hoặc tái chế nhóm ứng dụng cũng sẽ xóa bộ nhớ cache.

+0

Tôi nên làm gì để đảm bảo rằng các mục trong Bộ nhớ cache của tôi luôn nằm trong bộ nhớ cache? Tôi có thể đặt chúng trong bộ nhớ cache trên Application_Start trong Global.asax .. Có ổn không? Hoặc tôi cần phải làm điều gì đó khác? – Riz

+0

@dFriend - Các mục được lưu trong bộ nhớ cache sẽ vẫn ở trong bộ nhớ cache, bất cứ nơi nào bạn thêm chúng. Chúng sẽ chỉ hết hạn khi đặt lại/tái chế (hoặc nếu được hướng dẫn). – Oded

+0

IIS không tự động tái chế khi ví dụ không còn đủ bộ nhớ nữa? – Rookian

Các vấn đề liên quan