У меня возникают проблемы с тем, что JVM сразу же выходит из разных новых приложений. Я написал, какие потоки появляются в рамках Scala 2.10 Futures + Promises.Контекст выполнения без потоков демона для фьючерсов
Кажется, что по крайней мере с контекстом выполнения по умолчанию, даже если я использую блокировку, например.
future { blocking { /* work */ }}
не запускается нитка не-демона, и поэтому JVM считает, что он может немедленно уйти.
Глупый труд - это запустить экземпляр dummy Thread
, который просто ждет, но тогда мне также нужно убедиться, что этот поток остановится, когда процессы будут выполнены.
Итак, как мне заставить их работать на потоках не-демона?
Что вы используете? ExecutionContext? Создаете ли вы его самостоятельно или получаете его из «ExecutionContext.global»? – cmbaxter
Я думаю, что это происходит как с «глобальным», так и с созданием однопоточной, это в основном два сценария, которые у меня есть. –