From ae052321c53ccf20c8415736bb4f8370a9fcbfa2 Mon Sep 17 00:00:00 2001 From: blue <825657193@qq.com> Date: Fri, 29 Dec 2023 01:05:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=A9=BA=E5=BE=AA=E7=8E=AF?= =?UTF-8?q?=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/bx/imclient/listener/MessageListenerMulticaster.java | 1 - .../com/bx/imclient/task/GroupMessageResultResultTask.java | 4 ++-- .../com/bx/imclient/task/PrivateMessageResultResultTask.java | 4 ++-- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/im-client/src/main/java/com/bx/imclient/listener/MessageListenerMulticaster.java b/im-client/src/main/java/com/bx/imclient/listener/MessageListenerMulticaster.java index 8e1fdcd..bd95284 100644 --- a/im-client/src/main/java/com/bx/imclient/listener/MessageListenerMulticaster.java +++ b/im-client/src/main/java/com/bx/imclient/listener/MessageListenerMulticaster.java @@ -27,7 +27,6 @@ public class MessageListenerMulticaster { for(MessageListener listener:messageListeners){ IMListener annotation = listener.getClass().getAnnotation(IMListener.class); if(annotation!=null && (annotation.type().equals(IMListenerType.ALL) || annotation.type().equals(listenerType))){ - results.forEach(result->{ // 将data转回对象类型 if(result.getData() instanceof JSONObject){ diff --git a/im-client/src/main/java/com/bx/imclient/task/GroupMessageResultResultTask.java b/im-client/src/main/java/com/bx/imclient/task/GroupMessageResultResultTask.java index 7089f70..400220d 100644 --- a/im-client/src/main/java/com/bx/imclient/task/GroupMessageResultResultTask.java +++ b/im-client/src/main/java/com/bx/imclient/task/GroupMessageResultResultTask.java @@ -40,13 +40,13 @@ public class GroupMessageResultResultTask extends AbstractMessageResultTask { if(!results.isEmpty()){ listenerMulticaster.multicast(IMListenerType.GROUP_MESSAGE, results); } - } while (results.size() < batchSize); + } while (results.size() >= batchSize); } List loadBatch() { String key = StrUtil.join(":", IMRedisKey.IM_RESULT_GROUP_QUEUE, appName); //这个接口redis6.2以上才支持 - //List list = redisTemplate.opsForList().leftPop(key, 100); + //List list = redisTemplate.opsForList().leftPop(key, batchSize); List results = new LinkedList<>(); JSONObject jsonObject = (JSONObject) redisTemplate.opsForList().leftPop(key); while (!Objects.isNull(jsonObject) && results.size() < batchSize) { diff --git a/im-client/src/main/java/com/bx/imclient/task/PrivateMessageResultResultTask.java b/im-client/src/main/java/com/bx/imclient/task/PrivateMessageResultResultTask.java index 9ff6c80..2451db1 100644 --- a/im-client/src/main/java/com/bx/imclient/task/PrivateMessageResultResultTask.java +++ b/im-client/src/main/java/com/bx/imclient/task/PrivateMessageResultResultTask.java @@ -41,13 +41,13 @@ public class PrivateMessageResultResultTask extends AbstractMessageResultTask { if(!results.isEmpty()){ listenerMulticaster.multicast(IMListenerType.PRIVATE_MESSAGE, results); } - } while (results.size() < batchSize); + } while (results.size() >= batchSize); } List loadBatch() { String key = StrUtil.join(":", IMRedisKey.IM_RESULT_PRIVATE_QUEUE, appName); //这个接口redis6.2以上才支持 - //List list = redisTemplate.opsForList().leftPop(key, 100); + //List list = redisTemplate.opsForList().leftPop(key, batchSize); List results = new LinkedList<>(); JSONObject jsonObject = (JSONObject) redisTemplate.opsForList().leftPop(key); while (!Objects.isNull(jsonObject) && results.size() < batchSize) {