21 class WinHttpSyncHttpClient;
32 WinConnectionPoolMgr(
void* iOpenHandle,
unsigned maxConnectionsPerHost,
long requestTimeout,
long connectTimeout);
33 WinConnectionPoolMgr(
void* iOpenHandle,
unsigned maxConnectionsPerHost,
long requestTimeout,
long connectTimeout,
bool enableTcpKeepAlive,
unsigned long tcpKeepAliveIntervalMs);
56 virtual const char*
GetLogTag()
const {
return "ConnectionPoolMgr"; }
114 std::mutex m_hostConnectionsMutex;
115 unsigned m_maxConnectionsPerHost;
116 long m_requestTimeoutMs;
117 long m_connectTimeoutMs;
118 bool m_enableTcpKeepAlive;
119 unsigned long m_tcpKeepAliveIntervalMs;
120 std::mutex m_containerLock;
Aws::Utils::ExclusiveOwnershipResourceManager< void * > hostConnections
virtual void DoCloseHandle(void *handle) const =0
void ReleaseConnectionForHost(const Aws::String &host, unsigned port, void *connection)
void * GetOpenHandle() const
long GetRequestTimeout() const
WinConnectionPoolMgr(void *iOpenHandle, unsigned maxConnectionsPerHost, long requestTimeout, long connectTimeout)
unsigned long GetTcpKeepAliveInterval() const
void * AcquireConnectionForHost(const Aws::String &host, uint16_t port)
WinConnectionPoolMgr(void *iOpenHandle, unsigned maxConnectionsPerHost, long requestTimeout, long connectTimeout, bool enableTcpKeepAlive, unsigned long tcpKeepAliveIntervalMs)
virtual ~WinConnectionPoolMgr()
bool GetEnableTcpKeepAlive() const
long GetConnectTimeout() const
virtual const char * GetLogTag() const
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String