public ConnectionPool(string host, int port, ConnectionPoolConfig config,bool isframed=false) { if (config == null) throw new ArgumentNullException("config"); _target = new Server(host, port,isframed); _config = config; _socketSettings = config.SocketSettings ?? TSocketSettings.DefaultSettings; if (config.PoolSize > 0) { _useLimiter = true; _connectionLimiter = new Semaphore(config.PoolSize, config.PoolSize); } }
/// <summary> /// /// </summary> public Connection(Server server, TSocketSettings socketSettings) { Created = DateTime.Now; Server = server; if (server.IsFramed) { var tsocket = new TSocket(server.Host, server.Port); _transport = new TFramedTransport(tsocket); // _transport = new TFramedTransport(server.Host, server.Port, socketSettings); } else { var tsocket = new TSocket(server.Host, server.Port); _transport = new TBufferedTransport(tsocket, 1024); //TODO remove hardcode } _protocol = new TBinaryProtocol(_transport); _client = new Rest.Client(_protocol); }