diff --git a/runelite-client/src/main/java/net/runelite/client/callback/ClientThread.java b/runelite-client/src/main/java/net/runelite/client/callback/ClientThread.java index 805b7a5620..8935c8118e 100644 --- a/runelite-client/src/main/java/net/runelite/client/callback/ClientThread.java +++ b/runelite-client/src/main/java/net/runelite/client/callback/ClientThread.java @@ -27,14 +27,16 @@ package net.runelite.client.callback; import com.google.inject.Inject; import java.util.Iterator; import java.util.concurrent.ConcurrentLinkedQueue; +import java.util.concurrent.Executor; import java.util.function.BooleanSupplier; import javax.inject.Singleton; import lombok.extern.slf4j.Slf4j; import net.runelite.api.Client; +import org.jetbrains.annotations.NotNull; @Singleton @Slf4j -public class ClientThread +public class ClientThread implements Executor { private final ConcurrentLinkedQueue invokes = new ConcurrentLinkedQueue<>(); @@ -112,4 +114,14 @@ public class ClientThread } } } + + @Override + public void execute(@NotNull Runnable r) + { + invoke(() -> + { + r.run(); + return true; + }); + } }