9
0
mirror of https://github.com/VolmitSoftware/Iris.git synced 2025-12-23 00:59:16 +00:00

Proper derefs

This commit is contained in:
cyberpwn
2021-09-14 12:17:39 -04:00
parent 18efedf7c5
commit ad323ebf2b
7 changed files with 19 additions and 0 deletions

View File

@@ -48,6 +48,8 @@ public class PreservationSVC implements IrisService {
public void dereference() { public void dereference() {
IrisContext.dereference(); IrisContext.dereference();
IrisData.dereference(); IrisData.dereference();
threads.removeWhere((i) -> !i.isAlive());
services.removeWhere(ExecutorService::isShutdown);
} }
@Override @Override

View File

@@ -420,6 +420,7 @@ public class IrisEngine implements Engine {
getData().clearLists(); getData().clearLists();
Iris.service(PreservationSVC.class).dereference(); Iris.service(PreservationSVC.class).dereference();
Iris.debug("Engine Fully Shutdown!"); Iris.debug("Engine Fully Shutdown!");
complex = null;
} }
@Override @Override

View File

@@ -884,6 +884,7 @@ public interface Engine extends DataProvider, Fallible, LootProvider, BlockUpdat
{ {
return sl.matches(engine, chunk); return sl.matches(engine, chunk);
} }
return false; return false;
}; };

View File

@@ -234,6 +234,9 @@ public class BukkitChunkGenerator extends ChunkGenerator implements PlatformChun
} }
getEngine().close(); getEngine().close();
folder.clear();
populators.clear();
}); });
} }

View File

@@ -136,4 +136,11 @@ public class FolderWatcher extends FileWatcher {
public KList<File> getDeleted() { public KList<File> getDeleted() {
return deleted; return deleted;
} }
public void clear() {
watchers.clear();
changed.clear();
deleted.clear();
created.clear();
}
} }

View File

@@ -89,4 +89,8 @@ public class ReactiveFolder {
return fw.checkModified(); return fw.checkModified();
} }
public void clear() {
fw.clear();
}
} }

View File

@@ -358,6 +358,7 @@ public class Mantle {
Iris.reportError(e); Iris.reportError(e);
} }
loadedRegions.clear();
Iris.debug("The Mantle has Closed " + C.DARK_AQUA + dataFolder.getAbsolutePath()); Iris.debug("The Mantle has Closed " + C.DARK_AQUA + dataFolder.getAbsolutePath());
} }