gpt4 book ai didi

Scala future 不可期待?

转载 作者:行者123 更新时间:2023-12-05 00:26:11 32 4
gpt4 key购买 nike

我正在尝试使用 Scala Futures 来实现从网络服务键/值存储中获取的线程化批量获取。

大致

import scala.concurrent._
import scala.concurrent.ExecutionContext.Implicits.global
import scala.concurrent.duration._

def bulkGet(keys: List[String])
val listFut = keys.map( future{ "network get request here" } )
val values = Future.sequence(listFut)

Await.result(values, Duration(10, SECONDS))

给我一个编译错误
[info] Compiling 1 Scala source to .../target/scala-2.10/classes...
[error] .... type mismatch;
[error] found : scala.concurrent.Future[List[String]]
[error] required: scala.concurrent.Awaitable[scala.concurrent.Future[List[String]]]

[error] Await.result(values, Duration(10, SECONDS))
^

我究竟做错了什么。
我正在关注文档 re:如何阻止结果
http://docs.scala-lang.org/overviews/core/futures.html

scala.concurrent.Future 根据定义不是 Awaitable 吗?我如何强制它成为?

最佳答案

如果我修复了示例代码中的语法(通过将 def 的主体放入一个块中,并将 future{ "network get request here" } 替换为 _ => Future{ "network get request here" } ),则可以编译并运行。问题出在代码的其他部分。

关于Scala future 不可期待?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22622319/

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