override def generateJob(time: Time): Option[Job] = {
parent.getOrCompute(time) match {
case Some(rdd) =>
val jobFunc = () => createRDDWithLocalProperties(time, displayInnerRDDOps) {
foreachFunc(rdd, time)
}
Some(new Job(time, jobFunc))
case None => None
}
}
val jobFunc = () => createRDDWithLocalProperties(time, displayInnerRDDOps) {
foreachFunc(rdd, time)
}
这个代码是啥意思?createRDDWithLocalProperties 函数执行,为什么后面还会有一个花括号啊??
我不知道你的上下文其他代码是怎么样的,但如果你仅仅只是想明白花括号是干嘛用的下面有一个例子:
我们有个不知道这么做加法的运算
abstractAdd
,除了要传入要进行加法的a
和b
,还需要传入一个真正实现加法的函数。func
就实现完整实现了加法运算了。涉及知识点:柯里化、高阶函数