1234567891011121314151617181920212223242526272829303132333435363738 |
- using YiSha.Util;
- using YiSha.Cache.Interface;
- using YiSha.MemoryCache;
- using YiSha.RedisCache;
- namespace YiSha.Cache.Factory
- {
- public class CacheFactory
- {
- private static ICache cache = null;
- private static readonly object lockHelper = new object();
- public static ICache Cache
- {
- get
- {
- if (cache == null)
- {
- lock (lockHelper)
- {
- if (cache == null)
- {
- switch (GlobalContext.SystemConfig.CacheProvider)
- {
- case "Redis": cache = new RedisCacheImp(); break;
- default:
- case "Memory": cache = new MemoryCacheImp(); break;
- }
- }
- }
- }
- return cache;
- }
- }
- }
- }
|