【发布时间】:2017-08-03 15:09:42
【问题描述】:
我现在没有直接使用它,但这个问题只是在我脑海中弹出,无法在网上找到一个好的答案:
我有一个函数“callExactKeyFromDB”,它返回:Either[A, Future[A]](A= 来自内存缓存中的本地,Future[A] = 查询数据库)。我可以将该 Future 传递给不同的线程/执行上下文,并让它们都在“onComplete”上注册,还是每次调用这个函数时我都返回一个新的未来,保留一个注册的未来列表并在我完成它们时更好可以。
现在的问题是我可以用 1 Future 做吗?我应该做吗?
(假设有 4 个进程从数据库请求用户信息并等待它继续)
【问题讨论】:
-
1) 您可以撰写
Futures,例如List[Future]到Future[List]但你是否应该是另一回事。 2)发布代码以将所有内容置于上下文中。
标签: scala concurrency future