Я работаю с Slick and Cats.
database.run
возвращает Future
, но мне нужен метод моего класса (generi c на F[_]: Async
) для возврата монады F
. Я могу заставить его работать так:
val future = database.run(insertion)
val result = Await.result(future, Duration.Inf)
Async[F].delay(result)
, но это не тот способ, которым это нужно делать наверняка, поскольку он блокирует поток.
Есть ли какой-нибудь правильный способ сделать это?