Kiedy dokładnie powinniśmy użyć tej metody. W przypadku wyjątku JedisConnectionException, JedisDataException lub dowolnego wyjątku JedisException. Nie ma dobrej dokumentacji API dla Jedis według mojej wiedzy.Jedi - Kiedy używać returnBrokenResource()
try {
Jedis jedis = JedisFactory.getInstance();
Pipeline pipe = jedis.pipelined();
Response<Set<Tuple>> idWithScore = pipe.zrangeWithScores(cachekey, from, to);
**// some statement which may cause some other exception**
Response<String> val = pipe.get(somekey);
pipe.exec();
pipe.sync();
}catch (JedisConnectionException e) {
JedisFactory.returnBrokenResource(jedis);
}catch(Exception e){
**// What API I should use here?, how to find whether to use returnBrokenResource(jedis) or returnResource(jedis)**
}finally{
JedisFactory.returnResource(jedis);
}
Czy istnieje dokumentacja interfejsu API dla oprogramowania Jedis, aby lepiej zrozumieć interfejsy API. – user1182253
Nie - generalnie używam przykładów podanych na https://github.com/xetorthio/jedis/tree/master/src/test/java/redis/clients/jedis/tests - kiedy utknąłem, zaglądam kod źródłowy. –
Powiedzmy, że łapię JedisConnectionException i returnBrokenResource. Czy nadal powinienem być w końcu bloku returnResource? Czy spowoduje to problemy z dwukrotnym odzyskaniem zasobów? –