diff --git a/src/main/java/net/openhft/chronicle/map/ChronicleMapBuilder.java b/src/main/java/net/openhft/chronicle/map/ChronicleMapBuilder.java index f4ca04bf8..fb2de366b 100755 --- a/src/main/java/net/openhft/chronicle/map/ChronicleMapBuilder.java +++ b/src/main/java/net/openhft/chronicle/map/ChronicleMapBuilder.java @@ -1811,19 +1811,6 @@ public final class ChronicleMapBuilder implements OldDeletedEntriesCleanupThread cleanupThread = new OldDeletedEntriesCleanupThread(map); map.addCloseable(cleanupThread); cleanupThread.start(); - // WARNING this relies on the fact that ReplicatedChronicleMap closes closeables in the same - // order as they are added, i. e. OldDeletedEntriesCleanupThread instance close()d before - // the following closeable - String mapIdentityString = map.toIdentityString(); - map.addCloseable(() -> { - try { - cleanupThread.join(); - } catch (InterruptedException e) { - LOG.warn(mapIdentityString + - ": Interrupted while waiting for the cleanup thread to cease"); - Thread.currentThread().interrupt(); - } - }); } /** diff --git a/src/main/java/net/openhft/chronicle/map/OldDeletedEntriesCleanupThread.java b/src/main/java/net/openhft/chronicle/map/OldDeletedEntriesCleanupThread.java index 71b49e1e6..47efdd2d8 100644 --- a/src/main/java/net/openhft/chronicle/map/OldDeletedEntriesCleanupThread.java +++ b/src/main/java/net/openhft/chronicle/map/OldDeletedEntriesCleanupThread.java @@ -76,6 +76,7 @@ class OldDeletedEntriesCleanupThread extends Thread OldDeletedEntriesCleanupThread(ReplicatedChronicleMap map) { super("Cleanup Thread for " + map.toIdentityString()); + setDaemon(true); this.mapRef = new WeakReference<>(map); cleanupTimeout = map.cleanupTimeout; cleanupTimeoutUnit = map.cleanupTimeoutUnit;