나는 이해를 위해 미래를 되돌아 보는 많은 기능을 가지고 있지만 출구에서 몇 가지 가능한 실패를 복구해야 할 필요가 있습니다. 표준 구문은 그래서 같은 중간 결과로 이해의를 캡처하는 것 같다 def fooBar(): Future[String] = (for {
x <- foo()
y <- bar(x)
} yield y).recover {
일련의 Future를 순서대로 실행하는 가장 정교한 방법을 찾으려합니다. 하나의 Future의 실행은 이전에 따라 달라집니다. 나는 미래의 임의의 숫자에 대해 이것을하려고 노력하고있다. 사용자의 경우 : 내 데이터베이스에서 ID의 수를 검색했다. 이제 웹 서비스에서 관련 데이터를 검색해야합니다. 유효한 결과를 찾았 으면 한 번 멈추고 싶습니다. 나는 성공한
for 본문의 가장 안쪽에있는 결과를 List[Output]으로 수집하여 반환 할 수 있습니다. 하지만 yield을 사용하고 싶습니다. 이 방법은 for-yield 패턴을 사용하여로 변환 할 수있는 방법 : 스칼라에서 def useForComprehension(input : Input): List[Output] = {
for (o <- spli
나는 그것이 기대하는 것과는 다른 일을하고 있기 때문에 이해력의 작동 방법을 추론하려고합니다. 나는 몇 가지 대답을 읽었는데, 가장 관련성이 높은 것은이 하나이다 Scala "<-" for comprehension 그러나 나는 여전히 당황 스럽다. 다음 코드 은 예상대로 작동합니다.. file.getLines().foreach { line =>
스칼라에서의 포용력의 효율성에 대한 질문이 있습니다.가 이 다음 코드 파마 난 다음에 다음 코드를 변경 약 550 요소 perm = some list
for{
perm <- perms.withFilter(_.size > 0)
wordList = somefunction(perm) //expensive operation, wordlist i
나는 //all data have different types
val data1Future = loadData1(params)
val data2Future = loadData2(params)
val data3Future = loadData3(params)
def saveResult(rez): Future[_] = ???
data1Future.f
나는이 작동하지 않는 이유를 파악 붙어 : import scala.concurrent.future
import scala.concurrent.Future
import scala.concurrent.ExecutionContext
import scala.concurrent.ExecutionContext.Implicits.global
object Fu
null을 사용하고 이해를 위해 입력 주석을 처리 할 때 이상한 동작이 무엇인지 이해하려고합니다. 예를 들어 는 :에 def f(): String = null
for {
a <- Option("hello")
b = f()
} yield (a, b)
결과 예상 : //> res0: Option[(String, String)] = S
를 들어 내가 MongoDB를 함께 ReactiveMongo를 사용하여 재생 Framework 응용 프로그램을 함께하고, 나는 다음과 같은 코드가 있습니다 def categories(id: String): Future[Vector[Category]] = {...}
....
val categoriesFuture = categories(id)
for {