Java 有没有办法限制未来可完成的UniRun链的长度?

Java 有没有办法限制未来可完成的UniRun链的长度?,java,completable-future,Java,Completable Future,有一个用于发送消息的映射,其定义为: private static ConcurrentHashMap<Integer, CompletableFuture<Void>> dispatch = new ConcurrentHashMap<>(); 其中,每个事件是一个10米的字符串 class Event { private Integer id; private String message; } 由于UniRun引用事件并且不能限制Un

有一个用于发送消息的映射,其定义为:

private static ConcurrentHashMap<Integer, CompletableFuture<Void>> dispatch = new ConcurrentHashMap<>();
其中,每个事件是一个10米的字符串

class Event {
    private Integer id;
    private String message;
}

由于UniRun引用事件并且不能限制UniRun的长度,因此代码几乎总是OOM。有没有办法限制CompletableFuture的UniRun链的长度?

应用限制时会发生什么?您刚刚告诉
CompletableFuture
链接一个依赖操作,但是已经达到了限制,那么
CompletableFuture
应该怎么做呢?
class Event {
    private Integer id;
    private String message;
}