如何计算Apache Common Pool 2中的空闲对象和借用对象的数量

时间:2017-08-09 23:56:37

标签: apache-commons-pool

BaseGenericObjectPool类中定义了几个getXXXCount方法

  1. BaseGenericObjectPool.getBorrowedCount

  2. BaseGenericObjectPool.getCreatedCount

  3. BaseGenericObjectPool.getDestroyedCount

  4. 但是所有这些都是在创建池之后计算的,也就是说,累计了计数。

    我想问一下当用户要求这些计数时,如何计算被借用对象的数量和空闲对象。

1 个答案:

答案 0 :(得分:0)

BaseGenericObjectPool 抽象类声明 getNumIdle() 方法,该方法返回“当前池中空闲的实例数” 。 BaseGenericObjectPool本身不提供借用实例的数量。

要获取借用实例的数量,您应该查看实现 ObjectPool KeyedObjectPool 接口的类,例如GenericObjectPool或GenericKeyedObjectPool类。这些接口都声明了getNumActive()方法,该方法返回“当前从该池借用的实例数” (ObjectPool情况)或“从此池借用的实例总数池,但尚未返回”。KeyedObjectPool case)。