线程池借用

时间:2013-02-21 08:29:30

标签: java

当GenericObjctPool borrowObject无法借用Object时会发生什么。

例如,如果它是在任意循环中借用但线程池的大小只有2。 它是否会阻止对non -availability上的borrowObject调用的调用或者将它排队?

2 个答案:

答案 0 :(得分:1)

直接来自javadoc

  

如果池已用尽(没有可用的空闲实例且无法创建新实例),此方法将阻止(WHEN_EXHAUSTED_BLOCK),抛出NoSuchElementException(WHEN_EXHAUSTED_FAIL)或增长(WHEN_EXHAUSTED_GROW - 忽略maxActive)。当whenExhaustedAction == WHEN_EXHAUSTED_BLOCK由maxWait属性确定时,此方法将阻塞的时间长度。

答案 1 :(得分:0)

导致无限期阻塞 - getPool()。returnObject(MyRunnable)缺失