我一直在努力理解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
...为什么?而且,接收和反应之间的区别是什么?
答案 0 :(得分:8)
需要启动演员。只需在主要方法的顶部添加MyActor.start
即可。如果在while循环中添加延迟,它将不那么混乱。