/// <summary>
        /// Initializes an instance of <see cref="RedisClientOptions"/> with the default configuration.
        /// </summary>
        public RedisClientOptions()
        {
            PingTimeout             = Timeout.InfiniteTimeSpan;
            ConnectionTimeout       = TimeSpan.FromSeconds(5);
            ReadBufferSize          = 8192;
            WriteBufferSize         = 8192;
            UseExecutionPlanCaching = true;
            LoadBasedSelector       = new BasicLoadBasedSelector();
            PreventPingIfActive     = true;
            Logger = NoLogger.Instance;
            var multiplexPool = new MultiplexPoolOptions();

            multiplexPool.CommandConnections  = 2;
            multiplexPool.SubscriptionOptions = 2;
            MultiplexPool = multiplexPool;
            var exclusivePool = new ExclusivePoolOptions();

            exclusivePool.Minimum = 0;
            exclusivePool.Maximum = 0;
            ExclusivePool         = exclusivePool;
        }
 private void ValidateExclusive(ExclusivePoolOptions config)
 {
     ParameterGuard.CannotBeNegative(config.Minimum, "ExclusivePoolOptions.Minimum");
     ParameterGuard.MustBeBiggerOrEqualThan(config.Maximum, "ExclusivePoolOptions.Maximum", config.Minimum);
 }