diff --git a/src/main/java/de/pickshadow/plugin/utils/Miscellaneous.java b/src/main/java/de/pickshadow/plugin/utils/Miscellaneous.java index 4bb1325..80234fa 100644 --- a/src/main/java/de/pickshadow/plugin/utils/Miscellaneous.java +++ b/src/main/java/de/pickshadow/plugin/utils/Miscellaneous.java @@ -52,13 +52,18 @@ public class Miscellaneous { // Ensures garbage collection // Stolen from JLibs // https://github.com/santhosh-tekuri/jlibs/blob/e001fb7286c84f456125d1be00fc9a7e3b128881/core/src/main/java/jlibs/core/lang/RuntimeUtil.java#L148 - public static void gc(){ + public static void threadedGc(){ + Thread gcThread = new Thread(Miscellaneous::gc); + gcThread.start(); + } + + public static void gc() { ObjHolder.logger.warn(Miscellaneous.class, "Forcing garbage collection"); Object obj = new Object(); WeakReference ref = new WeakReference<>(obj); obj = null; - while(ref.get() != null) - System.gc(); + while(ref.get() != null) System.gc(); + ObjHolder.logger.warn(Miscellaneous.class, "Garbage collector finished"); } // Data type conversion