diff --git a/ball-common/src/main/java/cn/hamster3/mc/plugin/ball/common/api/BallAPI.java b/ball-common/src/main/java/cn/hamster3/mc/plugin/ball/common/api/BallAPI.java index f5aeb11..b7c4010 100644 --- a/ball-common/src/main/java/cn/hamster3/mc/plugin/ball/common/api/BallAPI.java +++ b/ball-common/src/main/java/cn/hamster3/mc/plugin/ball/common/api/BallAPI.java @@ -16,12 +16,12 @@ import cn.hamster3.mc.plugin.ball.common.listener.BallRedisListener; import cn.hamster3.mc.plugin.core.common.api.CoreAPI; import cn.hamster3.mc.plugin.core.common.data.DisplayMessage; import cn.hamster3.mc.plugin.core.lib.net.kyori.adventure.text.Component; +import cn.hamster3.mc.plugin.core.lib.redis.clients.jedis.Jedis; import com.google.common.eventbus.AsyncEventBus; import com.google.common.eventbus.EventBus; import lombok.Getter; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import redis.clients.jedis.Jedis; import javax.sql.DataSource; import java.sql.*; @@ -490,7 +490,9 @@ public abstract class BallAPI { for (int i = 0; i < channel.length; i++) { channel[i] = ballConfig.getChannelPrefix() + channel[i]; } - redisSub.subscribe(BallRedisListener.INSTANCE, channel); + CoreAPI.getInstance().getExecutorService().submit( + () -> redisSub.subscribe(BallRedisListener.INSTANCE, channel) + ); } /** @@ -499,7 +501,9 @@ public abstract class BallAPI { * @param channel 频道名称 */ public void subscribeIgnorePrefix(@NotNull String... channel) { - redisSub.subscribe(BallRedisListener.INSTANCE, channel); + CoreAPI.getInstance().getExecutorService().submit( + () -> redisSub.subscribe(BallRedisListener.INSTANCE, channel) + ); } /** @@ -508,7 +512,9 @@ public abstract class BallAPI { * @param patterns 频道名称正则表达式 */ public void subscribePatterns(@NotNull String patterns) { - redisSub.psubscribe(BallRedisListener.INSTANCE, patterns); + CoreAPI.getInstance().getExecutorService().submit( + () -> redisSub.psubscribe(BallRedisListener.INSTANCE, patterns) + ); } // /** diff --git a/ball-common/src/main/java/cn/hamster3/mc/plugin/ball/common/listener/BallRedisListener.java b/ball-common/src/main/java/cn/hamster3/mc/plugin/ball/common/listener/BallRedisListener.java index d18715b..6de5cfc 100644 --- a/ball-common/src/main/java/cn/hamster3/mc/plugin/ball/common/listener/BallRedisListener.java +++ b/ball-common/src/main/java/cn/hamster3/mc/plugin/ball/common/listener/BallRedisListener.java @@ -4,8 +4,8 @@ import cn.hamster3.mc.plugin.ball.common.api.BallAPI; import cn.hamster3.mc.plugin.ball.common.data.BallMessage; import cn.hamster3.mc.plugin.ball.common.event.message.MessageReceivedEvent; import cn.hamster3.mc.plugin.core.common.api.CoreAPI; +import cn.hamster3.mc.plugin.core.lib.redis.clients.jedis.JedisPubSub; import com.google.common.eventbus.EventBus; -import redis.clients.jedis.JedisPubSub; public class BallRedisListener extends JedisPubSub { public static final BallRedisListener INSTANCE = new BallRedisListener();