/// <summary> /// 写入 /// </summary> /// <typeparam name="F"></typeparam> /// <param name="doWrite"></param> /// <returns></returns> public F TryRedisWrite <F>(Func <IRedisClient, F> doWrite) { PooledRedisClientManager prcm = new Managers().GetClientManagers(); IRedisClient client = null; try { using (client = prcm.GetClient()) { return(doWrite(client)); } } catch (RedisException) { throw new Exception("Redis写入异常.Host:" + client.Host + ",Port:" + client.Port); } finally { if (client != null) { client.Dispose(); } } }
/// <summary> /// 读取 /// </summary> /// <typeparam name="F"></typeparam> /// <param name="doRead"></param> /// <returns></returns> public F TryRedisRead <F>(Func <IRedisClient, F> doRead) { PooledRedisClientManager prcm = new Managers().GetClientManagers(); IRedisClient client = null; try { using (client = prcm.GetReadOnlyClient()) { return(doRead(client)); } } catch (RedisException ex) { return(default(F)); } finally { if (client != null) { client.Dispose(); } } }