首页 新闻 会员 周边

Cache能否在CS项目中使用

0
悬赏园豆:10 [已关闭问题] 关闭于 2013-12-04 10:09

如题,WEB下面的Cache能否在CS项目中使用。

有这样一个功能,为缓存增加自动清理功能

lucika.zh的主页 lucika.zh | 初学一级 | 园豆:62
提问于:2013-11-14 09:43
< >
分享
所有回答(2)
0

cache是为了缓解服务器的压力而设置的

你都你搞cache有什么意义,还不如搞一个静态变量存放不得了。。。

为乐而来 | 园豆:1432 (小虾三级) | 2013-11-14 11:55

类似Cache的功能,变量有时效性,比如5秒。

支持(0) 反对(0) lucika.zh | 园豆:62 (初学一级) | 2013-11-14 12:49
0

可以试试如下对象:

public class Obj
    {
        /// <summary>
        /// 值,过期后返回null
        /// </summary>
        public object Value
        {
            get
            {
                if (Expired < DateTime.Now)
                {
                    return Value;
                }
                return null;
            }
            set
            {
                Value = value;
                Expired = DateTime.Now.AddSeconds(5);
            }
        }

        /// <summary>
        /// 超时时间
        /// </summary>
        public DateTime Expired { get; set; }
    }
幻天芒 | 园豆:37175 (高人七级) | 2013-11-14 13:19

存储很多数据!如果采用这种方式只有在访问的时候才会清除内存。但很多变量并不会第二次访问,二次访问的概率50%.

支持(0) 反对(0) lucika.zh | 园豆:62 (初学一级) | 2013-11-14 13:32

@lucika.zh: 将这样的对象加入List,然后再开个线程,5s检测一次,过期的就删掉吧~

支持(0) 反对(0) 幻天芒 | 园豆:37175 (高人七级) | 2013-11-14 13:48
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册