Calculs tardifs (F#)
Les calculs tardifs sont des calculs qui ne sont pas évalués immédiatement, mais lorsque le résultat est réellement nécessaire. Cela peut aider à améliorer les performances de votre code.
let identifier = lazy ( expression )
Notes
Dans la syntaxe précédente, expression représente du code qui est uniquement évalué lorsqu'un résultat est requis, et identifier est une valeur qui stocke le résultat. La valeur est de type Lazy<'T>, où le type réel utilisé pour 'T est déterminé à partir du résultat de l'expression.
Les calculs tardifs vous permettent d'améliorer les performances en restreignant l'exécution d'un calcul aux seules situations dans lesquelles un résultat est exigé.
Pour forcer l'exécution du calcul, appelez la méthode Force. Force entraîne une seule exécution du calcul. Les appels suivants à Force retournent le même résultat, mais n'exécutent pas le code.
Le code suivant illustre l'utilisation du calcul tardif et de Force. Dans ce code, le type de result est Lazy<int> et la méthode Force retourne int.
let x = 10
let result = lazy (x + 10)
printfn "%d" (result.Force())
L'évaluation tardive est également utilisée pour les séquences, mais pas le type Lazy. Pour plus d'informations, consultez Séquences (F#).