C# Caching---Cache 缓存
1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5 using System.Threading.Tasks;
6 using System.Web;
7 using System.Web.Caching;
8
9 namespace ODBCConsoleApp
10 {
11 class CacheHelper
12 {
13
14 /// <summary>
15 /// 获取数据缓存
16 /// </summary>
17 /// <param name="cacheKey">键</param>
18 public static object GetCache(string cacheKey)
19 {
20 var objCache = HttpRuntime.Cache.Get(cacheKey);
21 return objCache;
22 }
23 /// <summary>
24 /// 设置数据缓存
25 /// </summary>
26 public static void SetCache(string cacheKey, object objObject)
27 {
28 var objCache = HttpRuntime.Cache;
29 objCache.Insert(cacheKey, objObject);
30 }
31 /// <summary>
32 /// 设置数据缓存
33 /// </summary>
34 public static void SetCache(string cacheKey, object objObject, int timeout = 7200)
35 {
36 try
37 {
38 if (objObject == null) return;
39 var objCache = HttpRuntime.Cache;
40 //相对过期
41 //objCache.Insert(cacheKey, objObject, null, DateTime.MaxValue, new TimeSpan(0, 0, timeout), CacheItemPriority.NotRemovable, null);
42 //绝对过期时间
43 objCache.Insert(cacheKey, objObject, null, DateTime.UtcNow.AddSeconds(timeout), TimeSpan.Zero, CacheItemPriority.High, null);
44 }
45 catch (Exception)
46 {
47 //throw;
48 }
49 }
50 /// <summary>
51 /// 移除指定数据缓存
52 /// </summary>
53 public static void RemoveAllCache(string cacheKey)
54 {
55 var cache = HttpRuntime.Cache;
56 cache.Remove(cacheKey);
57 }
58 /// <summary>
59 /// 移除全部缓存
60 /// </summary>
61 public static void RemoveAllCache()
62 {
63 var cache = HttpRuntime.Cache;
64 var cacheEnum = cache.GetEnumerator();
65 while (cacheEnum.MoveNext())
66 {
67 cache.Remove(cacheEnum.Key.ToString());
68 }
69 }
70
71 }
72 }
1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5 using System.Threading.Tasks;
6
7 namespace ODBCConsoleApp
8 {
9 class Program
10 {
11 static void Main(string[] args)
12 {
13 // CacheHelper.RemoveAllCache();
14 var uid = Guid.NewGuid().ToString();
15 //CacheHelper.SetCache(uid, uid, 1);
16 uid = "ed19c366-8af3-4379-a140-733e290bef4e";
17 var value = CacheHelper.GetCache(uid);
18
19 Console.WriteLine(value);
20 Console.ReadLine();
21 }
22 }
23 }
C# Caching---Cache 缓存的更多相关文章
- System.Web.Caching.Cache缓存帮助类
/// <summary> /// 缓存帮助类 /// </summary> public class CacheHelper { /// <summary> // ...
- 第一节:从程序集的角度分析System.Web.Caching.Cache ,并完成基本封装。
一. 揭开迷雾 1. 程序集准备 a. 需要给项目添加 System.Web 程序集. b. 需要给使用的地方添加两个引用. 2. 程序集探究 在对应的类中输入关键字 Cache,选中点 ...
- System.Web.Caching.Cache类 缓存
1.文件缓存依赖 public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender ...
- System.Web.Caching.Cache类 缓存 各种缓存依赖
原文:System.Web.Caching.Cache类 缓存 各种缓存依赖 Cache类,是一个用于缓存常用信息的类.HttpRuntime.Cache以及HttpContext.Current.C ...
- System.Web.Caching.Cache类 缓存 各种缓存依赖(转)
转自:http://www.cnblogs.com/kissdodog/archive/2013/05/07/3064895.html Cache类,是一个用于缓存常用信息的类.HttpRuntime ...
- System.Web.Caching.Cache类 Asp.Net缓存 各种缓存依赖
Cache类,是一个用于缓存常用信息的类.HttpRuntime.Cache以及HttpContext.Current.Cache都是该类的实例. 一.属性 属性 说明 Count 获取存储在缓存中的 ...
- C# System.Web.Caching.Cache类 缓存 各种缓存依赖
原文:https://www.cnblogs.com/kissdodog/archive/2013/05/07/3064895.html Cache类,是一个用于缓存常用信息的类.HttpRuntim ...
- Spring Cache缓存技术,Cacheable、CachePut、CacheEvict、Caching、CacheConfig注解的使用
前置知识: 在Spring Cache缓存中有两大组件CacheManager和Cache.在整个缓存中可以有多个CacheManager,他们负责管理他们里边的Cache.一个CacheManage ...
- 清除 System.Web.Caching.Cache 以"xxx"开头的缓存
public static void ClearStartCache(string keyStart) { List<string> cacheKeys = new List<str ...
- caching与缓存
通常,应用程序可以将那些频繁访问的数据,以及那些需要大量处理时间来创建的数据存储在内存中,从而提高性能.例如,如果应用程序使用复杂的逻辑来处理大量数据,然后再将数据作为用户频繁访问的报表返回,避免在用 ...
随机推荐
- RedisTemplate RedisConfig 序列化方式 fastjson2
目录 Fastjson2 序列化 Redis.config RedisUtil.java fastjson和fastjson2的区别 Spring Data Redis 为我们提供了下面的Serial ...
- 使用 LLVM 框架创建一个工作编译器,第 1 部分
使用 LLVM 及其中间表示构建一个自定义编译器 LLVM 编译器基础架构提供了一种强大的方法来优化您使用任何编程语言编写的应用程序.了解本系列文章(由两部分组成)第一部分中有关 LLVM 的基础知识 ...
- 基于antlr的表达式解析器
package formula; import java.util.HashMap; import java.util.List; import java.util.Map; import org.a ...
- python之gevent
gevent 是一个基于协程的 Python 网络库,它使用 Greenlet 库提供了一种高效的协程实现. 协程是一种轻量级的线程,允许并发执行,但没有真正的并行性.协程可 以在遇到 I/O 操作时 ...
- nginx之日志切割
方便查看nginx日志, 平常会将nginx日志进行每日切割处理. 这里介绍 平常比较常用的两种方式 1. logrotate 在linux上logrotate是一个日志文件管理工具.用于分割日志文件 ...
- docker-compose之配置docker-compose.yml
当前有三种版本的Compose配置文件格式: Version 1 旧版格式,通过省略YAML的根配置项version来指定. 未声明版本的Compose配置文件都被视为V1版,所有的服务都作为根选项在 ...
- PythonDay2Base
PythonDay2Base 前文见上一篇文章 数据类型详解 字符串 str 补充 startswith 判断字符串是否以某个小字符串开头 s1 = "shujia数加科技学习study&q ...
- 基于CPLD/FPGA的呼吸灯效果实现(附全部verilog源码)
一.功能介绍 此设计可以让你的FPGA板子上那颗LED具有呼吸效果,像智能手机上的呼吸灯一样.以下源码已上板验证通过,大家可直接使用. 二.呼吸灯Verilog源码 ps1. 带★号处可根据需要进行修 ...
- C语言离散化
C语言离散化 最近看到STL就不想用, 于是写个C语言离散化, 居然能过主席树板子, 就写个博客介绍一下. qsort和bsearch都在<stdlib.h>或<cstdlib> ...
- 【杂谈】服务端能同时处理多少个 Socket 连接?背后的资源与限制分析
一个服务端进程能同时连接多少个 Socket? 要理解一个服务端进程能同时支持多少个连接,首先我们需要明确一个 socket 连接 的表示方式.一个连接由四个部分组成:[LocalIP:LocalPo ...