diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/domain/CardSendModel.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/domain/CardSendModel.java index d6029761..aeaff8b0 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/domain/CardSendModel.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/domain/CardSendModel.java @@ -13,6 +13,7 @@ import lombok.Setter; import java.util.ArrayList; import java.util.Collection; +import java.util.Collections; import java.util.HashMap; import java.util.List; @@ -26,7 +27,7 @@ public class CardSendModel { private final CardRequestContext requestContext; private final CardTemplate cardTemplate; - private final List cards = new ArrayList<>(); + private final List cards = Collections.synchronizedList(new ArrayList<>()); private GeneralMessagePushVO cardContent; diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/utils/RecordCursor.java b/inside-notices/src/main/java/cn/axzo/msg/center/utils/RecordCursor.java index 9edfc409..0500d613 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/utils/RecordCursor.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/utils/RecordCursor.java @@ -36,6 +36,7 @@ public class RecordCursor implements Iterable> { return new Iterator>() { long maxId = 0; + // single thread producer volatile List batch; Boolean batchConsumed;