为了降低数据库操作频率,将一些系统中常用的基础信息(前提是数据量较小)放到应用程序数据缓存中去。
以下方法经过测试,支持多线程,特此记录
public class SystemCacheManage
{
private static object manageLock = new object();
private static string keySysTime = "systime";
public static int GetSystemTime()
{
if (HttpRuntime.Cache.Get(keySysTime) == null)
{
lock (manageLock)
{
if (HttpRuntime.Cache.Get(keySysTime) == null)
{
HttpRuntime.Cache.Insert(keySysTime, 0, null, DateTime.Now.AddMinutes(5), TimeSpan.Zero);
}
}
}
return Convert.ToInt32(HttpRuntime.Cache.Get(keySysTime));
}
}