2011-06-30 24 views
0

我在多线程环境中使用httpClient(4.1.x)。我正在使用ThreadSafeClientConnManager类来创建一个持久连接的连接池,当我的Web服务器接收到请求时,不同的线程会调用这些连接池。HttpClient当MAX_CONNECTIONS已打开且正忙时的行为

HttpClient有一个MAX_CONNECTIONS参数和一个MAX_CONNECTIONS_PER_ROUTE参数,可以根据需要服务的并发请求数配置参数。

我的问题是有关当达到MAX_CONNECTIONS限制时ThreadSafeClientConnManager的行为。支持MAX_CONNECTIONS已经打开,它们都很忙,即被其他线程使用。现在,通过新线程向连接池发出一个新连接的新请求。现在,它是否(ConnectionPool)忽略这个请求,或者调用是否阻塞调用线程,并等待连接管理器能够找到一个空闲的连接?

回答

0

它会阻塞,直到达到超时*或连接被释放。

*(将您的值用于连接超时作为阻止获取超时)

相关问题