有没有办法在scala中并行运行流而不将所有对象加载到内存中?
注意:使用 par 方法,会将所有对象加载到内存中
val list = "a"::"b"::"c"::"d"::"e"::Nil //> list: List[String] = List(a, b, c, d, e)
val s = list.toStream //> s: scala.collection.immutable.Stream[String] = Stream(a, ?)
val sq = s.par //> sq: scala.collection.parallel.immutable.ParSeq[String] = ParVector(a, b, c, d, e)
sq.map { x => println("Map 1 "+x);x }
.map { x => println("Map 2 "+x);x}
.map { x => println("Map 3 "+x);x }
.foreach { x => println("done "+x)}
Run Code Online (Sandbox Code Playgroud) 将文档插入TinyDB数据库时可以定义文档ID吗?例如(来自教程)https://pypi.python.org/pypi/tinydb
from tinydb import TinyDB, where
from tinydb import TinyDB, where
db = TinyDB('./db.json')
db.insert({'int': 1, 'char': 'a'})
db.insert({'int': 1, 'char': 'b'}
Run Code Online (Sandbox Code Playgroud)
但如果我们看到生成的文档:
{"_default": {"1": {"int": 1, "char": "a"}, "2": {"int": 1, "char": "b"}}}
Run Code Online (Sandbox Code Playgroud)
诸如“1”和“2”之类的 id 由 TinyDB 自动决定。插入文档时是否可以选择该ID?另外,可以进行更新插入吗?
谢谢!:)
假设我有这个JSON结构:
{
"name":"repo",
"tags":["1.0","2.0","3.0"]
}
Run Code Online (Sandbox Code Playgroud)
我想将它映射到这个Go结构:
type Repository struct {
Name string `json:"name"`
Tags []struct {
Tag string `json:"??"`
Sha256 string
}
}
Run Code Online (Sandbox Code Playgroud)
如何将"tags"数组JSON值链接到struct字段?
编辑:想法将是这样访问标签数组值
repository.Tags[0].Tag.