diff options
| author | sixcooler <sgaebel@sixcooler.de> | 2014-10-22 11:25:07 +0200 |
|---|---|---|
| committer | sixcooler <sgaebel@sixcooler.de> | 2014-10-22 11:25:07 +0200 |
| commit | eb9d2705d2900aaf549045d08e43bdc37ea37d76 (patch) | |
| tree | 86f02f153f78df9e15fd9d4ca774f7adc09515bd | |
| parent | 6f707b43051501aa9f268d0c6d0791fc6e5edca7 (diff) | |
fix for ConnectionInfo.cleanup of server-connections
| -rw-r--r-- | source/net/yacy/cora/protocol/ConnectionInfo.java | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/source/net/yacy/cora/protocol/ConnectionInfo.java b/source/net/yacy/cora/protocol/ConnectionInfo.java index cb1a87a4b..0e4af1e50 100644 --- a/source/net/yacy/cora/protocol/ConnectionInfo.java +++ b/source/net/yacy/cora/protocol/ConnectionInfo.java @@ -289,16 +289,17 @@ public class ConnectionInfo implements Comparable<ConnectionInfo> { * removes stale connections */ public static void cleanUp() { - cleanup(getAllConnections().iterator()); - cleanup(getServerConnections().iterator()); + cleanup(getAllConnections()); + cleanup(getServerConnections()); } - private static void cleanup(final Iterator<ConnectionInfo> iter) { + private static void cleanup(final Set<ConnectionInfo> connectionSet) { + final Iterator<ConnectionInfo> iter = connectionSet.iterator(); synchronized (iter) { while (iter.hasNext()) try { ConnectionInfo con = iter.next(); if(con.getLifetime() > staleAfterMillis) { - getAllConnections().remove(con); + connectionSet.remove(con); } } catch (ConcurrentModificationException e) {} } |
