加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Scala AKKA Actor的错误消息

发布时间:2020-12-16 08:50:07 所属栏目:安全 来源:网络整理
导读:这是我的代码: class testActor extends Actor { var test = "test2" def receive = { case "test" ? "works" }} def test = Action { var test = "test" val system = ActorSystem("MySystem") val myActor = system.actorOf(Props[testActor.testActor],n
这是我的代码:

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

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

    test = Await.result(myActor ? "test",Duration(1,TimeUnit.SECONDS))
}

我收到这行错误:

test = Await.result(myActor ? "test",TimeUnit.SECONDS))

错误是:

找不到参数超时的隐含值:akka.util.Timeout

解决方法

添加隐式val timeout = Timeout(5秒)之类的内容.见 http://doc.akka.io/docs/akka/2.0.1/scala/futures.html

顺便说一下,你还需要改变

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

test = Await.result(myActor ? "test",timeout.duration).asInstanceOf[String]

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读