我在IIS6上運行的C#(FrameWork 4.0)中有一個應用程序。如何在IIS6中擁有永久緩存的數據
我想要緩存的數據數據(類的腳)永久, ,但事件或類似的東西在短時間(15-25分鐘)刪除緩存的數據, 。
我配置IIS僅使用此選項:回收工作進程(以分鐘計)1740
任何想法,以保持高速緩存中的數據? 靜態變量的filetime是否與應用程序生命週期相同?
public class CacheUsers
{
static object objlock;
private static List<Users> usersList { get; set; }
private static DateTime lastUpdate;
public CacheUsers()
{
if (objlock == null)
{
objlock = new object();
}
lock (objlock)
{
if (usersList == null || usersList.Count.Equals(0) || (lastUpdate < DateTime.Now.AddHours(-24)))
{
UpdateUserList();
}
}
}
public static List<Users> ListaCacheada
{
get
{
if (usersList == null || usersList.Count.Equals(0) || (lastUpdate < DateTime.Now.AddHours(-24)))
{
UpdateUserList();
}
return usersList;
}
}
/// <summary>
/// Refresh the user list
/// </summary>
private static void UpdateUserList()
{
usersList = GetUsers();
lastUpdate = DateTime.Now;
}
}
你在哪裏實例'CacheUsers'? – Matthew 2012-03-08 18:13:42
因此,您希望數據在應用程序池回收後出現? – 2012-03-08 18:17:13
2.是的,當然,我希望在應用程序池回收後獲得數據,這是目的。 – 2012-03-09 09:38:27