public IRedisConnection GetConnection() { RedisConnection conn = null; lock (this._availableConnections) { if (this._availableConnections.Any()) { conn = this._availableConnections.Pop(); } else { conn = RedisConnection.Connect(_host, _port); } _requestedConnections.Push(conn); } return(new PooledRedisConnection(conn, ReturnConnectionCallback)); }