我正在尝试使用 Slick 异步查询 MySQL 数据库。下面的代码模板,我用它在理解中查询大约 90k 行,最初似乎可以工作,但是程序消耗了几 GB 的 RAM,并且在大约 200 次查询后没有警告就失败了。
import scala.slick.jdbc.{StaticQuery => Q}
def doQuery(): Future[List[String]] = future {
val q = "select name from person"
db withSession {
Q.query[String](q).list
}
}
我尝试使用该fromURL
方法和使用 c3p0 连接池来设置连接。我的问题是:这是对数据库进行异步调用的方式吗?