Get a fresh resource each time instead.

This commit is contained in:
Tux 2013-10-18 17:11:24 -04:00
parent dd4f49b199
commit 49c8b83e52
1 changed files with 12 additions and 13 deletions

View File

@ -11,31 +11,30 @@ import redis.clients.jedis.Jedis;
public class UpdateCountTask implements Runnable {
private RedisBungee plugin;
private Jedis rsc;
private boolean kill = false;
public UpdateCountTask(RedisBungee plugin) {
this.plugin = plugin;
rsc = plugin.getPool().getResource();
}
@Override
public void run() {
if (kill) {
if (rsc != null) {
plugin.getPool().returnResource(rsc);
rsc = null;
}
return;
}
int c = plugin.getProxy().getOnlineCount();
rsc.set("server:" + plugin.getServerId() + ":playerCount", String.valueOf(c));
for (String i : plugin.getServers()) {
if (i.equals(plugin.getServerId())) continue;
if (rsc.exists("server:" + i + ":playerCount"))
c += Integer.valueOf(rsc.get("server:" + i + ":playerCount"));
Jedis rsc = plugin.getPool().getResource();
try {
int c = plugin.getProxy().getOnlineCount();
rsc.set("server:" + plugin.getServerId() + ":playerCount", String.valueOf(c));
for (String i : plugin.getServers()) {
if (i.equals(plugin.getServerId())) continue;
if (rsc.exists("server:" + i + ":playerCount"))
c += Integer.valueOf(rsc.get("server:" + i + ":playerCount"));
}
plugin.setCount(c);
} finally {
plugin.getPool().returnResource(rsc);
}
plugin.setCount(c);
}
protected void kill() {