Я ищу неглобальный экземпляр ForkJoinPool
, чтобы получить весь отличный параллелизм по умолчанию и семантику выполнения глобального экземпляра с возможностью управления жизненным циклом пула.
Я заглянул в исходный код scala.concurrent
и scala.concurrent.impl,
и, к сожалению, похоже, что весь код, создающий экземпляр по умолчанию, — это private[scala.concurrent]
, и нет никакого косвенного способа вызвать этот код.
Я могу получить только новый экземпляр ExecutionContext
с настройками по умолчанию, используя ExecutionContext.fromExecutor(null)
, но нет никакого способа получить базовый ForkJoinPool
. Также нет способа отключить ExecutionContext
напрямую.
Делаю ли я что-то эзотерическое, чего мне не следует делать? Потому что мне кажется естественным хотеть: семантику/конфигурацию чего-то по умолчанию без его глобальности.