diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/util/InvocationDispatcher.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/util/InvocationDispatcher.java index d67020aad..274e05edb 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/util/InvocationDispatcher.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/util/InvocationDispatcher.java @@ -33,7 +33,9 @@ public class InvocationDispatcher implements Consumer { public static InvocationDispatcher runOn(Consumer executor, Consumer action) { return new InvocationDispatcher<>(arg -> executor.accept(() -> { - action.accept(arg.get()); + synchronized (action) { + action.accept(arg.get()); + } })); }