遅延式 は、すぐに評価されるのではなく、結果が必要になったときに評価される式です。 これにより、コードのパフォーマンスを向上させることができます。
構文
let identifier = lazy ( expression )
注釈
前の構文では、 式 は結果が必要な場合にのみ評価されるコードであり、 識別子 は結果を格納する値です。 値の型は Lazy<'T>
で、式の結果から 'T
に使用される実際の型が決定されます。
遅延式を使用すると、式の実行を結果が必要な状況のみに制限することで、パフォーマンスを向上させることができます。
式を強制的に実行するには、メソッド Force
を呼び出します。
Force
は、実行が 1 回だけ実行されるようにします。
Force
の後続の呼び出しでは同じ結果が返されますが、コードは実行されません。
次のコードは、遅延式の使用と Force
の使用を示しています。 このコードでは、 result
の型が Lazy<int>
され、 Force
メソッドは int
を返します。
let x = 10
let result = lazy (x + 10)
printfn "%d" (result.Force())
遅延評価は、 Lazy
型ではなく、シーケンスにも使用されます。 詳細については、「 シーケンス」を参照してください。
こちらも参照ください
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET