выпуская пул джедаев - PullRequest
       16

выпуская пул джедаев

0 голосов
/ 12 января 2020

В большинстве примеров, включая этот пример Jedis, пул Jedis создается в скобке try..catch, которая, как мне кажется, располагает:

try(Jedis jedis = jedisPool.getResource())
{
    some code
}

Для меня это невозможно, потому что Мне нужно выдавать ошибки при использовании пула Jedis, в зависимости от результата от Redis. Так что для меня это просто

Jedis jedis = jedisPool.getResource()

Вопрос в том, как лучше расположить объект? Это jedis.disconnect? jedis.quit? jedis = null?

Есть несколько похожих вопросов, но не совсем одинаковых. Один об ошибке, которую он дает, другой об увеличении пула, другой о потоке.

1 Ответ

1 голос
/ 12 января 2020

Просто jedis.close(). См. Jedis - Когда использовать returnBrokenResource ()

Раньше вы ожидали использовать jedisPool.returnBrokenResource(jedis) или jedisPool.returnResource(jedis), но jedis.close() позаботился об этом.

См. Джедай. java.

Jedis jedis = null;
try {
    jedis = jedisPool.getResource();

...
}catch (JedisConnectionException e) {
...
}catch (Exception e){
...
} finally {
    if (jedis != null)
        jedis.close();
}
...