for-comprehension

    3熱度

    1回答

    我有一個Scala未來,如果結果不正確,則調用api並返回未來,然後另一個api調用將與第一個未來結果一起提交,並作爲未來返回。 這是我到目前爲止。 val fut1 = Future(queryFirst) val fut2 = fut1 map { case y if y.isInstanceOf[NoResult] => Future(queryAgainWithFut1Resu

    2熱度

    2回答

    我有一個Future[Future[(String,String)]],我想用理解將它轉換爲Future[(String,String)]。

    1熱度

    2回答

    我試圖找出順序執行一系列期貨的最好方法,其中一個未來的執行取決於前一個。我試圖爲任意數量的期貨做這件事。 用戶案例: 我從數據庫中檢索了一些IDS的。 我現在需要檢索Web服務上的一些相關數據。 我想要停止,一旦我找到了有效的結果。 我只關心成功的結果。 並行執行這些操作,然後解析返回的結果集合不是一個選項。我必須一次執行一個請求,並且只有在前一個請求沒有返回結果時才執行下一個請求。 目前的解決方

    0熱度

    2回答

    我可以將最內部for正文的結果收集到List[Output]並返回它們。但我想用yield。如何這種方法被轉換成使用for-yield圖案: def useForComprehension(input : Input): List[Output] = { for (o <- splitInputIntoPieces(input)) { for (restResults <-

    2熱度

    1回答

    我想理解如何理解工作,因爲它正在做一些不同於我期望它做的事情。我讀了幾個答案,其中最相關的是這一個Scala "<-" for comprehension但是,我仍然感到困惑。 以下代碼按預期工作。它打印在由兩個不同的正則表達式匹配的值不相等線(一個用於在會話cookie和用於在GET ARGS值的值的另一,只給上下文): file.getLines().foreach { line =>

    7熱度

    2回答

    當我不關心返回值時,我應該如何編寫代碼。 例子: for { a <- getA // I do not care about a, but I need to wait for the future to finish b <- getB } yield (b)

    10熱度

    2回答

    我對scala中的理解效率有疑問。 這下面的代碼需要大約45秒時的燙髮是大約550元素 perm = some list for{ perm <- perms.withFilter(_.size > 0) wordList = somefunction(perm) //expensive operation, wordlist is a list of strings

    4熱度

    1回答

    在PlayFramework 2.4中,我嘗試將所有控制器方法轉換爲JavaScript路由。 val jsRoutesClass = classOf[routes.javascript] val controllers = jsRoutesClass.getFields.map(_.get(null)) for ( controller <- controllers; m

    2熱度

    1回答

    我堅持弄清楚爲什麼這不起作用: import scala.concurrent.future import scala.concurrent.Future import scala.concurrent.ExecutionContext import scala.concurrent.ExecutionContext.Implicits.global object FutureTest

    3熱度

    1回答

    我使用ReactiveMongo用MongoDB的一個遊戲框架應用程序,我有以下代碼: def categories(id: String): Future[Vector[Category]] = {...} .... val categoriesFuture = categories(id) for { categories: Vector[Category] <- catego