我目前玩2.4.2,并使用成功创建线程池下面的以下内容:如何在Play 2.5.x中创建线程池?
package threads
import scala.concurrent.ExecutionContext
import play.api.libs.concurrent.Akka
import play.api.Play.current
object Contexts {
implicit val db: ExecutionContext = Akka.system.dispatchers.lookup("contexts.db-context")
implicit val pdf: ExecutionContext = Akka.system.dispatchers.lookup("contexts.pdf-context")
implicit val email: ExecutionContext = Akka.system.dispatchers.lookup("contexts.email-context")
}
,然后在代码...
Future{....}(threads.Contexts.db)
我们已经准备好升级到玩2.5并无法理解文档。 2.4.2的文档使用Akka.system.dispatchers.lookup,我们毫无问题地使用它。 2.5.x的文档使用app.actorSystem.dispatchers.lookup。据我所知,我必须将应用程序注入到类中,而不是对象。然而,文档清楚地使用了一个Object作为例子!
有没有人成功地创建了播放2.5.X,可以帮助出线程池?它是否像将类改变为类一样简单,然后将其注入到我想要使用此线程的任何位置?似乎奇怪,因为使用默认的ExecutionContext我只需要进行隐式导入。
此外,我们正在使用Play scala。
隐含查找发生的类型,你不想在隐含范围相同类型的多个对象,所以我不会在这里做的隐含注解。根据需要通过'implicit val ec = Contexts.db'或任何您需要的方法进入范围。 – Reactormonk