当前位置: 首页 > 知识库问答 >
问题:

将点火器[T]/Iterable[T]转换为Future[SEQ[T]]

汤玉宸
2023-03-14

基本上,我想读取Apache Ignite上的查询返回的所有值,该查询返回一个IgniteCursor。

我想以非阻塞的方式读取光标。

我可以写:

val iterable = cursor.asScala
val result = iterable.toList

Future{
  result
}

也许我错过了什么?

换句话说,有一种方法可以使用“异步非阻塞IO”从Ignite获取记录列表?

共有1个答案

景子安
2023-03-14

可迭代转换为未来[Seq]有意义吗?

那取决于你的目标是什么。

iterable是惰性和内存效率。seq是急切的,会占用更多的内存。通过从iterableseq,您实际上是在说:“在一切准备就绪并加载到内存之前,我不想看到任何数据。”

 类似资料:
  • 我只是想说清楚,我的意思是这样的- 另外,如果我访问第一个数组以外的元素,也会遇到同样的问题,即(INT*)arr+13。它会属于越界访问的条款吗?因为我是在第一个数组的边界之外访问的。

  • 我试图使用以下公式将Future[Seq[(String,String)]转换为Future[Seq[(String)]: 所以 sortedSeq 是 Future[Seq[(String, String)]] 但我一直得到错误: 我做错了什么?

  • 问题内容: 有没有简单的方法可以将Transact-SQL转换为MySQL? 我正在尝试转换股票代码和公司名称的数据库档案。 问题答案: 简短的回答: 否 中等答案: MAYBE 长答案: 这取决于TSQL中的内容以及要投入的时间和精力。 TSQL不是MySQL方言的子集。因此,存在一些没有MySQL转换的TSQL。但是,两种语言之间的重叠非常重要,并且在某种程度上转换只是语法问题。 这不是一个新

  • 下面是代码的味道:https://scastie.scala-lang.org/bQMGrAKgRoOFaK1lwCy04g 我有两个JSON APIendpoint。首先是项目。cgi以以下格式返回项目对象列表 表示项目没有借款人。 其次,用户。cgi,返回查询参数id指定的用户 API可能不好,但我必须处理它。现在在Scala中,我想使用这个漂亮的数据模型 我还有以下用于执行HTTP请求的方法

  • 问题内容: 我正在尝试编写一个通用方法以数组形式返回Iterable的内容。 这是我所拥有的: 但是我收到一个编译器警告“注意:… \ IterableHelp.java使用未经检查或不安全的操作。” 对于避免这种警告的其他方法有何想法? 问题答案: Google Guava中有一种方法。 查看源代码,其定义为: 凡最终委托给方法的样子: 因此,似乎无法完全避免,但是您可以并且至少应该将其限制在最

  • 问题内容: 我知道我可以使用,但是,我需要窥视对象的(可能不是第一个参数),以确定要转换的特定类。本质上,我想做的是这样的: 问题答案: 首先将JSON解析为JObject。然后使用LINQ to JSON 查找属性。然后根据值切换并使用进行强制转换: