Проблемы с пониманием актеров в скале - PullRequest
0 голосов
/ 24 мая 2011

Я пытался понять актеров в Scala, но до сих пор не понимаю ...

Следующий код:

def main(args: Array[String]){

  while(true){
    println("inside main")
    MyActor ! "go"
  }

}

object MyActor extends Actor{
  def act(){
    loop{
      react{
        case _ => println("inside actor")
      }
    }
  }  
}

Это печать inside main, но не inside actor ... Почему? Кроме того, в чем разница между получением и реакцией ??

1 Ответ

8 голосов
/ 24 мая 2011

Актеры должны быть запущены. Просто добавьте MyActor.start вверху вашего основного метода, и он будет работать. Это будет менее грязно, если вы добавите задержку внутри цикла while.

...