Gecikmeli İfadeler

Yavaş ifadeler, hemen değerlendirilmemiş ancak sonuç gerektiğinde değerlendirilen ifadelerdir. Bu, kodunuzun performansını artırmaya yardımcı olabilir.

Syntax

let identifier = lazy ( expression )

Açıklamalar

Önceki söz dizimsinde ifade, yalnızca bir sonuç gerekli olduğunda değerlendirilen koddur ve tanımlayıcı sonucu depolar. değeri, için Lazy<'T> kullanılan gerçek türün ifadenin 'T sonucundan belirlen olduğu türündedir.

Yavaş ifadeler, bir ifadenin yürütülmesini yalnızca bir sonucun gerekli olduğu durumlarla kısıtlar ve performansı artırmaya olanak sağlar.

İfadeleri gerçekleştirilecek şekilde zorlamak için yöntemini Force çağırarak. Force yürütmenin yalnızca bir kez gerçekleştirilecek olmasına neden olur. Sonraki çağrılar Force aynı sonucu elde etmek için ancak herhangi bir kod yürütmez.

Aşağıdaki kod, yavaş ifadelerin kullanımını ve kullanımını Force göstermektedir. Bu kodda türü result olur ve Lazy<int> yöntemi bir Force int döndürür.

let x = 10
let result = lazy (x + 10)
printfn "%d" (result.Force())

Yavaş değerlendirme, ancak Lazy türü değil, diziler için de kullanılır. Daha fazla bilgi için bkz. Diziler.

Ayrıca bkz.