麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

WisDom.Net 框架設計(三) 數據緩存

2019-11-17 01:30:18
字體:
來源:轉載
供稿:網友
WisDom.Net 框架設計(三) 數據緩存

WisDom.Net --數據緩存

1.幾種緩存方式

1.靜態全局變量

C#靜態變量使用 static 修飾符進行聲明,在類被實例化時創建,通過類進行訪問不帶有 static 修飾符聲明的變量稱做非靜態變量,在對象被實例化時創建,通過對象進行訪問一個類的所有實例的同一C#靜態變量都是同一個值,同一個類的不同實例的同一非靜態變量可以是不同的值。靜態函數的實現里不能使用非靜態成員,如非靜態變量、非靜態函數等。

2.System.Runtime.Caching 中緩存類庫

這個是.Net 4.0新出的一個命名空間,提供緩存對所有 .NET framework 應用程序 (而不僅僅是 asp.net) 進行訪問,高速緩存是可擴展的。您 可以創建自定義高速緩存提供程序。例如,您可以不使用默認的內存高速緩存引擎,而是創建自定義提供程序,在數據庫、自定義對象或文件系統中存儲高速緩存數據。具體參見MSDN.這里不展開講

3.頁面緩存,(顯然這里不合適)

2.WisDom.net.DataCahce 設計構想

1.我們設計數據緩存基類如下。這里使用模板模式(附上基類的代碼希望大家指正)

 public abstract class DataCacheCoomon<T>    {        PRotected  List<T> DataCacheDict = null;        private static object _obj = new object();        public  DataCacheCoomon()        {            if (DataCacheDict==null||DataCacheDict.Count == 0)            {                lock (_obj)                {                    if (DataCacheDict == null || DataCacheDict.Count == 0)                    {                        DataCacheDict = new List<T>();                        GetDataFromDb();                    }                }            }        }        protected abstract void GetDataFromDb();        /// <summary>        /// 增加數據緩存        /// </summary>        /// <param name="dataItem"></param>        public void AddDataCache(List<T> dataItem)        {            foreach (T data in dataItem)            {                DataCacheDict.Add(data);            }        }        /// <summary>        /// 刪除數據緩存        /// </summary>        /// <param name="dataItem"></param>        public void DelDataCache(List<T> dataItem)        {            foreach (T data in dataItem)            {                DataCacheDict.Remove(data);            }        }        /// <summary>        /// 獲取字典緩存        /// </summary>        /// <returns></returns>        public List<T> GetDataCacheDict()        {            return DataCacheDict;        }            }

2.在具體某個緩存項目時都需要繼承上面的基類

3. 使用并行方式將數據加到MemoryCache 中 示例如下(一個簡單的例子給大家參考,)從緩存中獲取

     ObjectCache objectCache = MemoryCache.Default;//            Parallel.Invoke(() =>            {                CacheItem Iten = new CacheItem("aaa", 1);                objectCache.Add(Iten, new CacheItemPolicy());            },                  () =>                  {                      CacheItem Iten = new CacheItem("Bbb", 1);                      objectCache.Add(Iten, new CacheItemPolicy());                  });


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产精品视频在线观看免费 | 日韩剧情片 | 狠狠操人人干 | 久草视频免费 | 一级免费特黄视频 | av观看国产 | 高清国产午夜精品久久久久久 | 午夜影视一区二区 | 黄色免费在线电影 | 欧美日韩国产一区二区三区在线观看 | 色淫影院 | 色偷偷欧美| 成人在线免费视频观看 | 一级黄色影片在线观看 | 日日草夜夜| 亚洲人成电影在线 | 久久久久一本一区二区青青蜜月 | 国产精品久久久久久模特 | 嗯~啊~弄嗯~啊h高潮视频 | 日韩av电影在线免费观看 | 成人爽a毛片免费啪啪红桃视频 | 欧美a视频在线观看 | 欧美大逼网 | 免费看成人av | 精品一区二区三区免费毛片 | 欧美一级性 | 日韩视频区 | 免费国产一级淫片 | 黄视频网站免费在线观看 | 草草免费视频 | 免费色片| 激情午夜天 | 国产精品刺激对白麻豆99 | 国产一级aaa全黄毛片 | 自拍偷拍亚洲图片 | 高清一区二区在线观看 | 亚洲第一综合色 | va毛片| 一级做a爱片久久毛片a高清 | www.91视频com | 精品中文字幕在线播放 |