org.apache.http.impl.conn

## Class PoolingClientConnectionManager

- java.lang.Object
- - org.apache.http.impl.conn.PoolingClientConnectionManager

- All Implemented Interfaces:
    ClientConnectionManager ， ConnPoolControl < HttpRoute >

  已过时。
  （4.3）使用`PoolingHttpClientConnectionManager` 。

      @Deprecated
      @Contract(threading=SAFE_CONDITIONAL)
      public class PoolingClientConnectionManager
      extends Object
      implements ClientConnectionManager, ConnPoolControl<HttpRoute>

  管理一个`OperatedClientConnection`的池，并且可以为来自多个执行线程的连接请求提供服务。 连接按每个路线合并。 对于已经具有持续连接以在池中可用的路由的请求将是通过从池中租用连接而不是创建全新连接来进行的服务。

  PoolingConnectionManager在每个路由基础上总共维护连接的最大限制。 默认情况下，此实施方案将在每个给定路由上创建不超过2个并发连接，并且不再有20个连接。 对于许多现实世界的应用程序，这些限制可能被证明是太限制的，特别是如果他们使用HTTP作为其服务的传输协议。 然而，连接限制可以使用HTTP参数进行调整。

  从以下版本开始：
    4.2

- - ### 构造方法摘要

    构造方法
    Constructor and Description
    `PoolingClientConnectionManager()` 已过时。
    `PoolingClientConnectionManager(SchemeRegistry schreg)` 已过时。
    `PoolingClientConnectionManager(SchemeRegistry schreg, DnsResolver dnsResolver)` 已过时。
    `PoolingClientConnectionManager(SchemeRegistry schemeRegistry, long timeToLive, TimeUnit tunit)` 已过时。
    `PoolingClientConnectionManager(SchemeRegistry schemeRegistry, long timeToLive, TimeUnit tunit, DnsResolver dnsResolver)` 已过时。

  - ### 方法摘要

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `closeExpiredConnections()` 已过时。 关闭池中的所有过期连接。
    `void` | `closeIdleConnections(long idleTimeout, TimeUnit tunit)` 已过时。 关闭池中的空闲连接。
    `protected ClientConnectionOperator` | `createConnectionOperator(SchemeRegistry schreg)` 已过时。 钩子用于创建连接运算符。
    `protected void` | `finalize()` 已过时。
    `int` | `getDefaultMaxPerRoute()` 已过时。
    `int` | `getMaxPerRoute(HttpRoute route)` 已过时。
    `int` | `getMaxTotal()` 已过时。
    `SchemeRegistry` | `getSchemeRegistry()` 已过时。 获得该经理使用的方案注册表。
    `PoolStats` | `getStats(HttpRoute route)` 已过时。
    `PoolStats` | `getTotalStats()` 已过时。
    `void` | `releaseConnection(ManagedClientConnection conn, long keepalive, TimeUnit tunit)` 已过时。 释放其他人使用的连接。
    `ClientConnectionRequest` | `requestConnection(HttpRoute route, Object state)` 已过时。 返回一个新的`ClientConnectionRequest` ，从中可以获得`ManagedClientConnection`或请求可以中止。
    `void` | `setDefaultMaxPerRoute(int max)` 已过时。
    `void` | `setMaxPerRoute(HttpRoute route, int max)` 已过时。
    `void` | `setMaxTotal(int max)` 已过时。
    `void` | `shutdown()` 已过时。 关闭此连接管理器并释放分配的资源。

    - ### Methods inherited from class java.lang.Object

      `clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### 构造方法详细信息

    - #### PoolingClientConnectionManager

          public PoolingClientConnectionManager(SchemeRegistry schreg)

      已过时。

    - #### PoolingClientConnectionManager

          public PoolingClientConnectionManager(SchemeRegistry schreg,
                                        DnsResolver dnsResolver)

      已过时。

    - #### PoolingClientConnectionManager

          public PoolingClientConnectionManager()

      已过时。

    - #### PoolingClientConnectionManager

          public PoolingClientConnectionManager(SchemeRegistry schemeRegistry,
                                        long timeToLive,
                                        TimeUnit tunit)

      已过时。

    - #### PoolingClientConnectionManager

          public PoolingClientConnectionManager(SchemeRegistry schemeRegistry,
                                        long timeToLive,
                                        TimeUnit tunit,
                                        DnsResolver dnsResolver)

      已过时。

  - ### 方法详细信息

    - #### finalize

          protected void finalize()
                           throws Throwable

      已过时。
      重写：
        `finalize`在 `Object`
      异常
        `Throwable`

    - #### createConnectionOperator

          protected ClientConnectionOperator createConnectionOperator(SchemeRegistry schreg)

      已过时。
      钩子用于创建连接运算符。 它由构造函数调用。 派生类可以覆盖此方法来更改运算符的实例化。 默认实现在此实例化`DefaultClientConnectionOperator` 。
      参数
        `schreg` - 方案注册表。
      结果
        连接运算符使用

    - #### getSchemeRegistry

          public SchemeRegistry getSchemeRegistry()

      已过时。
      描述从接口`ClientConnectionManager`复制
      获得该经理使用的方案注册表。
      Specified by:
        `getSchemeRegistry`在接口 `ClientConnectionManager`
      结果
        方案注册表，从不 `null`

    - #### requestConnection

          public ClientConnectionRequest requestConnection(HttpRoute route,
                                                  Object state)

      已过时。
      描述从接口`ClientConnectionManager`复制
      返回一个新的`ClientConnectionRequest` ，从中可以获得`ManagedClientConnection`或请求可以中止。
      Specified by:
        `requestConnection`在接口 `ClientConnectionManager`

    - #### releaseConnection

          public void releaseConnection(ManagedClientConnection conn,
                               long keepalive,
                               TimeUnit tunit)

      已过时。
      描述从接口`ClientConnectionManager`复制
      释放其他人使用的连接。 您可以选择指定连接有效重复使用的时间。 值<= 0被认为是永久有效的。 如果连接未被标记为可重用，则连接将不会重复使用，无论有效持续时间如何。 如果连接已经被释放，则呼叫将被忽略。
      Specified by:
        `releaseConnection`在接口 `ClientConnectionManager`
      参数
        `conn` - 要释放的连接
        `keepalive` - 此连接有效重用的持续时间
        `tunit` - 测量时间validDuration的单位
      另请参见：
        `ClientConnectionManager.closeExpiredConnections()`

    - #### shutdown

          public void shutdown()

      已过时。
      描述从接口`ClientConnectionManager`复制
      关闭此连接管理器并释放分配的资源。 这包括关闭所有连接，无论它们是否被使用。
      Specified by:
        `shutdown`在接口 `ClientConnectionManager`

    - #### closeIdleConnections

          public void closeIdleConnections(long idleTimeout,
                                  TimeUnit tunit)

      已过时。
      描述从接口`ClientConnectionManager`复制
      关闭池中的空闲连接。 在参数中给出的时间段中未使用的池中的打开连接将被关闭。 目前分配的连接不受此方法的约束。 时间将以毫秒精度检查所有过期的连接也将关闭。
      Specified by:
        `closeIdleConnections`在接口 `ClientConnectionManager`
      参数
        `idleTimeout` - 要关闭连接的空闲时间
        `tunit` -为对所述单元 `idletime`
      另请参见：
        `ClientConnectionManager.closeExpiredConnections()`

    - #### closeExpiredConnections

          public void closeExpiredConnections()

      已过时。
      说明从界面： `ClientConnectionManager`复制
      关闭池中的所有过期连接。 在连接被释放时定义的时间段中尚未使用的池中的打开连接将被关闭。 目前分配的连接不受此方法的约束。 时间将以毫秒精度检查。
      Specified by:
        `closeExpiredConnections`在接口 `ClientConnectionManager`

    - #### getMaxTotal

          public int getMaxTotal()

      已过时。
      Specified by:
        `getMaxTotal`在接口 `ConnPoolControl<HttpRoute>`

    - #### setMaxTotal

          public void setMaxTotal(int max)

      已过时。
      Specified by:
        `setMaxTotal`在接口 `ConnPoolControl<HttpRoute>`

    - #### getDefaultMaxPerRoute

          public int getDefaultMaxPerRoute()

      已过时。
      Specified by:
        `getDefaultMaxPerRoute`在接口 `ConnPoolControl<HttpRoute>`

    - #### setDefaultMaxPerRoute

          public void setDefaultMaxPerRoute(int max)

      已过时。
      Specified by:
        `setDefaultMaxPerRoute`在接口 `ConnPoolControl<HttpRoute>`

    - #### getMaxPerRoute

          public int getMaxPerRoute(HttpRoute route)

      已过时。
      Specified by:
        `getMaxPerRoute`在接口 `ConnPoolControl<HttpRoute>`

    - #### setMaxPerRoute

          public void setMaxPerRoute(HttpRoute route,
                            int max)

      已过时。
      Specified by:
        `setMaxPerRoute`在接口 `ConnPoolControl<HttpRoute>`

    - #### getTotalStats

          public PoolStats getTotalStats()

      已过时。
      Specified by:
        `getTotalStats`在接口 `ConnPoolControl<HttpRoute>`

    - #### getStats

          public PoolStats getStats(HttpRoute route)

      已过时。
      Specified by:
        `getStats`在接口 `ConnPoolControl<HttpRoute>`

Copyright © 1999–2017 The Apache Software Foundation. All rights reserved.

本帮助文档是使用 《谷歌翻译》翻译，请与英文版配合使用 by--QQ:654638585