public ICaching CreateCaching(string name) { ICaching caching; if (!this._cacheInstances.TryGetValue(name, out caching)) { lock (this._cacheInstances) { if (!this._cacheInstances.TryGetValue(name, out caching)) { bool useObjectPool = Objects.As <bool>(ConfigurationManager.AppSettings.Get("QL.Cache.Memcached.UseObjectPool"), false); caching = new MemcachedCaching(name, useObjectPool); this._cacheInstances.Add(name, caching); } } } return(caching); }