に一度だけの機能とキャッシュ値を実行し、私はそれが実行されていない場合、私はそれはいくつかの方法を実行し、その結果を返したい、このRUNONCE関数を呼び出すので、Scalaの
def runOnce(request: Request): Future[Result] = {
}
のような機能を持っています。それが実行されている場合、私はそれが元の結果を返すだけです(入って来る要求は同じになります)。
私は最初のケースで行うにはどのように
lazy val hydratedModel = hydrateImpl(request)
future for efficient filtering
def fetchHydratedModel(): Future[HydratedModelRequest] = {
hydratedModel
}
のように何のparamを持っていない場合、私はそれを行うことができますか?
は機能が本当に今までに一度1 'request'でより多くを呼び出すことでしょうか?あなたが望むもののテクニックはメモ化と呼ばれますが、要求にそれを適用することは私にとっては非常に奇妙なようです。 memoizationについては、[Scalaでメモを取る一般的な方法はありますか?](https://stackoverflow.com/questions/16257378/is-there-a-generic-way-to-memoize-in-scala) – Suma
あなたは本当ですか機能が必要ですか?それは名前とコールバリュー評価戦略による呼び出しと関係があります。 – Pavel