释放 Jedis 池
releasing Jedis pool
在大多数示例中,包括 this Jedis 示例,Jedis 池是在 try..catch 括号中创建的,我认为它是这样处理的:
try(Jedis jedis = jedisPool.getResource())
{
some code
}
对我来说这是不可能的,因为我需要在仍然使用 Jedis 池的同时抛出错误,具体取决于 Redis 的结果。所以对我来说这只是
Jedis jedis = jedisPool.getResource()
问题是如何最好地处置对象?是jedis.disconnect吗? jedis.quit?绝地武士 = null?
有一些类似的问题,但不完全相同。 One about error it gives, another about increasing pool, 关于线程。
简直jedis.close()
。参见 Jedis - When to use returnBrokenResource()
您过去应该使用 jedisPool.returnBrokenResource(jedis)
或 jedisPool.returnResource(jedis)
,但 jedis.close()
会处理它。
参见 Jedis.java。
Jedis jedis = null;
try {
jedis = jedisPool.getResource();
...
}catch (JedisConnectionException e) {
...
}catch (Exception e){
...
} finally {
if (jedis != null)
jedis.close();
}
在大多数示例中,包括 this Jedis 示例,Jedis 池是在 try..catch 括号中创建的,我认为它是这样处理的:
try(Jedis jedis = jedisPool.getResource())
{
some code
}
对我来说这是不可能的,因为我需要在仍然使用 Jedis 池的同时抛出错误,具体取决于 Redis 的结果。所以对我来说这只是
Jedis jedis = jedisPool.getResource()
问题是如何最好地处置对象?是jedis.disconnect吗? jedis.quit?绝地武士 = null?
有一些类似的问题,但不完全相同。 One about error it gives, another about increasing pool,
简直jedis.close()
。参见 Jedis - When to use returnBrokenResource()
您过去应该使用 jedisPool.returnBrokenResource(jedis)
或 jedisPool.returnResource(jedis)
,但 jedis.close()
会处理它。
参见 Jedis.java。
Jedis jedis = null;
try {
jedis = jedisPool.getResource();
...
}catch (JedisConnectionException e) {
...
}catch (Exception e){
...
} finally {
if (jedis != null)
jedis.close();
}