标签:memory 使用 line 目录 host net pre dap 文件
根据文件名缓冲文件:
/// <summary> /// 根据文件名缓冲指定目录文件 /// </summary> public class FileCacheAdapter { private string CacheFilePath = string.Empty; public FileCacheAdapter(string cacheFilePath) { CacheFilePath = cacheFilePath; } public string getCache() { if (string.IsNullOrEmpty(CacheFilePath)) { return ""; } if (!File.Exists(CacheFilePath)) { return ""; } string cacheKey = Path.GetFileName(CacheFilePath); string result = MemoryCache.Default[cacheKey] as string; //如果没有命中缓冲,则初始化该缓冲 if (result == null) { //缓冲过期策略 var policy = new CacheItemPolicy(); //设置过期时间 policy.AbsoluteExpiration = DateTimeOffset.Now.AddSeconds(10.0); //初始化缓冲项变化检测集合 var filePaths = new List<string>(); filePaths.Add(CacheFilePath); policy.ChangeMonitors.Add(new HostFileChangeMonitor(filePaths)); result = File.ReadAllText(CacheFilePath, Encoding.Default) + Environment.NewLine + DateTime.Now.ToString(); MemoryCache.Default.Set(cacheKey, result, policy); } return result; } }
使用示例:
string cacheFilePath = "e:\\cache\\cacheText.txt"; var cache = new FileCacheAdapter(cacheFilePath); string data = cache.getCache();
标签:memory 使用 line 目录 host net pre dap 文件
原文地址:http://www.cnblogs.com/moulton/p/6589693.html