Может ли возникнуть OutOfMemoryError или заблокироваться приложение при использовании CompletableFuture java?

Вопрос в чем, CompletableFuture использует forkJoinPool, соответственно там ограничено число потоков, и если запустить много CompletableFuture заданий, в которых например длительные блокирующие операции, то каждый поток заблокируется и новые таски не будут взяты в работу, пока не выполняться другие, верно я понимаю? OutOfMemoryError не возникнет, если по умолчанию использовать forkJoinPool без настройки, новые потоки не будут создаваться, приложение не заблокируется, так как основной поток не блокируется, но задачи будут простаивать, ждать когда выполнятся взятые в работу? В kotlin корутинах, поток может сохранить контекст и выполнять другую задачу, а тут получается такой возможности нет или я неправильно понял работу CompletableFuture? Где в инструментах java используется подход event loop из js? то есть будет вот такая картинка


Ответы (0 шт):