public T Write <T>(RedisCommand <T> command)
        {
            string response = _connector.Call(RedisCommands.AsTransaction(command));

            OnTransactionQueued(command, response);

            _execCommand.AddParser(x => command.Parse(x));
            return(default(T));
        }
 public Task <T> WriteAsync <T>(RedisCommand <T> command)
 {
     lock (_execCommand)
     {
         _execCommand.AddParser(x => command.Parse(x));
         return(_connector.CallAsync(RedisCommands.AsTransaction(command))
                .ContinueWith(t => OnTransactionQueued(command, t.Result))
                .ContinueWith(t => default(T)));
     }
 }