首页 > 其他分享 >Cache缓存帮助类

Cache缓存帮助类

时间:2022-09-29 19:44:39浏览次数:44  
标签:帮助 缓存 Cache value cache static ._

public class Cache
{
    private static Cache _cache = HttpRuntime.Cache;
    /// <summary>
    /// 本地缓存获取
    /// </summary>
    /// <param name="name">key</param>
    /// <returns></returns>
    public static object GetCache(string name)
    {
        return Cache._cache.Get(name);
    }
    /// <summary>
    /// 本地缓存写入(默认缓存20min)
    /// </summary>
    /// <param name="name">key</param>
    /// <param name="value">value</param>
    public static void SetCache(string name, object value)
    {
        Cache._cache.Insert(name, value, null, Cache.NoAbsoluteExpiration, TimeSpan.FromMinutes(20.0));
    }
    /// <summary>
    /// 本地缓存写入
    /// </summary>
    /// <param name="name">key</param>
    /// <param name="value">value</param>
    /// <param name="minutes">缓存分钟</param>
    public static void SetCache(string name, object value, int minutes)
    {
        Cache._cache.Insert(name, value, null, Cache.NoAbsoluteExpiration, TimeSpan.FromMinutes((double)minutes));
    }
    /// <summary>
    /// 读取缓存
    /// </summary>
    /// <param name="cacheKey">键</param>
    /// <returns></returns>
    public static T GetCache<T>(string cacheKey) where T : class
    {
        bool flag = Cache._cache[cacheKey] != null;
        T result;
        if (flag)
        {
            result = (T)Cache._cache[cacheKey];
        }
        else
        {
            result = default(T);
        }
        return result;
    }
    /// <summary>
    /// 写入缓存
    /// </summary>
    /// <param name="value">对象数据</param>
    /// <param name="cacheKey">键</param>
    public static void SetCache<T>(T value, string cacheKey) where T : class
    {
        Cache._cache.Insert(cacheKey, value, null, DateTime.Now.AddMinutes(20.0), Cache.NoSlidingExpiration);
    }
    /// <summary>
    /// 写入缓存
    /// </summary>
    /// <param name="value">对象数据</param>
    /// <param name="cacheKey">键</param>
    /// <param name="expireTime">到期时间</param>
    public static void SetCache<T>(T value, string cacheKey, DateTime expireTime) where T : class
    {
        Cache._cache.Insert(cacheKey, value, null, expireTime, Cache.NoSlidingExpiration);
    }
    /// <summary>
    /// 移除指定数据缓存
    /// </summary>
    /// <param name="cacheKey">键</param>
    public static void RemoveCache(string cacheKey)
    {
        Cache._cache.Remove(cacheKey);
    }
    /// <summary>
    /// 移除全部缓存
    /// </summary>
    public static void RemoveCache()
    {
        IDictionaryEnumerator enumerator = Cache._cache.GetEnumerator();
        while (enumerator.MoveNext())
        {
            Cache._cache.Remove(enumerator.Key.ToString());
        }
    }
}

 

标签:帮助,缓存,Cache,value,cache,static,._
From: https://www.cnblogs.com/lgx5/p/16742763.html

相关文章

  • Javadoc转换chm帮助文档的四种方法总结
     1)将现有的html文件集(比如api)制作成chm文档​​​​​​http://www.blogjava.net/lishunli/archive/2010/01/07/308618.html​​ 我建议使用javadoc2chm,看上去最......
  • 读取xml文件帮助类
    1.XML帮助类publicclassXmlHelper{publicstaticstringGetElementByName(stringxmlFileName,stringtagName){try......
  • linux复制其他服务器的yum缓存使用
    CENTOS安装mysql-wsrep集群时,需要安装很多依赖包,可以提前在一台系统环境相同的虚拟机或者能连公网的服务器上提前缓存。1、在A机器上配置yum缓存设置,并提前设置好网络yum......
  • wazuh hids爆破攻击检测——可以看到wazuh是将爆破的原始事件缓存了,最终取证输出。
    可以去申请一个商业版的试用:https://console.cloud.wazuh.com我的如下(我安装的是linux版本):       使用hydra在kali下做暴力破解攻击。==》可以看到wazu......
  • 【Redis】缓存穿透、缓存击穿、缓存雪崩
     缓存雪崩缓存雪崩是指缓存同一时间大面积失效,所以后面的请求都会落在数据库上,造成数据库短时间内承受大量请求而崩掉。目前电商首页以及热点数据都会缓存,一般缓存都......
  • Qt入门学习——Qt 5 帮助文档的使用
    学习图形界面开发,肯定离不开帮助文档的使用,因为它不像C语言那样就那么几个函数接口,图形接口的接口可以用海量来形容,常用的我们可能能记住,其它的真的没有必要去记,用到什么......
  • Memcached vs Redis, 挑选哪一个?
    MemcachedvsRedis,挑选哪一个?标签:MencachedRedisMemchached还是Redis?该用哪一个?当我们讨论改进性能的时候,这是每次技术讨论中最常见的一个问题。每当性能需要改善时......
  • 使用Spring boot基于Redis快速搭建分布式Session缓存方案
    使用Springboot基于Redis快速搭建分布式Session缓存方案大型web应用中,session的管理非常重要,这是单机存储满足不了的.通常有以下几种方法:将session持久化到数据库中.但......
  • 怎样用读写锁快速实现一个缓存?
    1)SDK已经有管程了,不是可以解决所有的并发问题的吗,为什么还要有读写锁?不同的场景下使用不同的锁效果是不一样的,我们的读写锁用在读多写少的场景下那是非常有用的。2)读写锁是......
  • 安装redis-4.0.9和memcached
    安装redis-4.0.9和memcached yum-yinstallgcc-c++wgetvimunzipzipmemcachedcd/mkdirsoftwarecd/softwarewgethttp://download.redis.io/releases/redis-4.0......