2015-12-30 4 views
0

Я пытаюсь запустить привет мир Akka будущей программу и запустить его в IntelliJ IDEA, ниже кодПочему дополнительный Println заявление необходимо для печати AKKA будущего содержания

import scala.concurrent.{Future} 
import scala.concurrent.ExecutionContext.Implicits.global 

object Main extends App { 
    val future = Future { 
    "a" + "World" 
    } 
    future foreach println 
    println("extra") 
} 

В коде выше, если удалить

println("extra") 

Почему будущее содержимое не отображается на консоли?

ответ

2

Фьючерсы выполняются в отдельных потоках. Ваш основной поток может закончить его работу перед будущей нитью. Попробуйте поспать на основной теме, чтобы увидеть результат в консоли

+1

Избегайте сна. Используйте что-то вроде 'System.in.read()', чтобы вы могли завершить приложение нажатием клавиши. –

Смежные вопросы