小编che*_*hes的帖子

Scala有哪些自动资源管理替代方案?

我在Web上看到了许多针对Scala的ARM(自动资源管理)示例.虽然大多数看起来很像彼此,但它似乎是一种写作的通道.不过,我确实看到了一个使用延续的非常酷的例子.

无论如何,很多代码都有这种或那种类型的缺陷,所以我认为在Stack Overflow上有一个引用是个好主意,我们可以在这里投票给出最正确和最合适的版本.

scala resource-management

100
推荐指数
6
解决办法
2万
查看次数

在喷涂路由中使用Future

我是异步编程的新手.我读了这个教程http://danielwestheide.com/blog/2013/01/09/the-neophytes-guide-to-scala-part-8-welcome-to-the-future.html,我很惊讶我是多么的轻松可以将Future纳入该计划.但是,当我使用Future with Routing时,返回类型有点错误.

get {
  optionalCookie("commToken") {
    case Some(commCookie) =>
      val response = (MTurkerProgressActor ? Register).mapTo[..].map({...})
      val result = Await.result(response, 5 seconds)

      setCookie(HttpCookie("commToken", content = result._2.mturker.get.commToken)) {
        complete(result._1, result._2.mturker.get)
      }

    case None => // ...
  }
}
Run Code Online (Sandbox Code Playgroud)

我真的不想使用Await(如果我只是阻塞线程并等待5秒钟,那么异步的重点是什么?).我试图用for-comprehension或flatMap并把setCookiecomplete行动里面,但返回类型是不可接受的喷雾.For-comprehension返回"Unit",并flatMap返回Future.

由于我需要设置这个cookie,我需要里面的数据.是Await解决方案吗?还是有一种简单的方式?

scala akka spray

5
推荐指数
1
解决办法
3519
查看次数

如何在 Scala 中测试期货列表

我想测试一个方法(使用 ScalaTest),它接受一个List值并在数据库中更新它们,Future为每个值返回一个表示更新成功的值。是否有一种惯用的方法来验证所有值都保留在数据库中?我如何知道Future从方法返回的所有s何时完成?

trait Result
case object A extends Result
case object B extends Result

def addToDB(i: String): Future[Result]

def persistUsers(users: List[String]): List[Future[Result]] = {
  users.map(addToDB)
}
Run Code Online (Sandbox Code Playgroud)

我尝试过这样的事情(有效)但是有更好的方法吗?

"should update list " in {
  val users = List("a","b","c")

  persistUsers(users)

  Thread.sleep(1000)

  whenReady(db.find("a")) { result => result shouldEqual A }
  .
  .
  .

}
Run Code Online (Sandbox Code Playgroud)

scala scalatest

3
推荐指数
1
解决办法
957
查看次数

如何获得R中系统发育树的节点顺序?

我使用 R 包ggtree绘制系统发育树,我需要知道提示的顺序,以便我可以将其与每个提示的特定信息结合起来。当然我可以手动记录订单,但是我有很多这样的树。更重要的是,与树图中显示的顺序相比,tr$tip.label 为我提供了不同的节点顺序。

我需要一些 R 脚本,它们可以从系统发育树对象中获得正确的提示顺序,当 R 绘制树时应该是相同的顺序。

那个树:

tr$tip.label 给出:

"seq6" "seq16" "seq12" "seq34" "seq5" "seq35" "seq41" "seq19" "seq22" "seq54" "seq7" "seq26" "seq9" "seq14" "seq4" "seq8" "seq33 " "seq11" "seq2" "seq13" "seq45" "seq42" "seq50" "seq3" "seq18" "seq29" "seq52" "seq53" "seq32" "seq21" "seq38" "seq51" "seq24" " seq47" "seq48" "seq43" "seq39" "seq23" "seq28" "seq1" "seq25" "seq40" "seq46" "seq36" "seq15" "seq49"

我想要的是:

每个树尖都与具有特定颜色的线对齐。

tree r phylogeny

3
推荐指数
1
解决办法
1614
查看次数

标签 统计

scala ×3

akka ×1

phylogeny ×1

r ×1

resource-management ×1

scalatest ×1

spray ×1

tree ×1