gpt4 book ai didi

Scala AKKA 访问变量或返回值

转载 作者:行者123 更新时间:2023-12-04 17:38:14 41 4
gpt4 key购买 nike

这是我的代码:

class testActor extends Actor   {
var test = "test2"
def receive = {
case "test" ⇒
test="works"
"works"

}
}


def test = Action {
var test = "test"
val system = ActorSystem("MySystem")
val myActor = system.actorOf(Props[testActor.testActor], name = "testActor")

myActor ! "test"

test = myActor.test

Ok(views.html.test(test))
}

该行:
测试 = myActor.test
不起作用。

我要么需要一种方法来访问actor函数返回的内容,在这种情况下“有效”,或者需要一种方法来访问actor内部的变量。

最佳答案

要将结果返回给发件人,请向其发送一条消息:

def receive = {
case "test" => sender ! "works"
}

等待响应使用 Await.result() 调用:
  implicit val timeout = Timeout(Duration(1, TimeUnit.SECONDS))
test = Await.result(myActor ? "test", Duration(1, TimeUnit.SECONDS))

关于Scala AKKA 访问变量或返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11477567/

41 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com