Aracılığıyla paylaş


Lazy.Force <'T> Uzantısı yöntemi (f #)

Bu değer yürütülmesini zorlar ve sonucu döndürür. Value ürünüyle aynı. Karşılıklı dışlama, diğer iş değeri de bilgisayar kullanımı önlemek için kullanılır.

İsim Uzayı/Modül Yolu Microsoft.FSharp.Control.LazyExtensions

Derleme FSharp.Core (FSharp.Core.dll içinde)

// Signature:
type System.Lazy with
  member Force : unit -> 'T

// Usage:
lazy.Force ()

Dönüş Değeri

Değeri yavaş nesne.

Örnek

Aşağıdaki kodu kullanımını göstermektedir Force uzantısı yöntemi.

let lazyFactorial n = Lazy.Create (fun () ->
    let rec factorial n =
        match n with
        | 0 | 1 -> 1
        | n -> n * factorial (n - 1)
    factorial n)
let printLazy (lazyVal:Lazy<int>) =
    if (lazyVal.IsValueCreated) then
        printfn "Retrieving stored value: %d" (lazyVal.Value)
    else
        printfn "Computing value: %d" (lazyVal.Force())
let lazyVal1 = lazyFactorial 12
let lazyVal2 = lazyFactorial 10
lazyVal1.Force() |> ignore
printLazy lazyVal1
printLazy lazyVal2

O zaman çıkış gösterir Force olarak adlandırılan değeri oluşturmak için lazyVal1, hesaplanan değer alınır yazdırırken değerleri.

  

Platformlar

Windows 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2

Sürüm Bilgileri

F# Çalışma Zamanı

Desteklenir: 2.0

Silverlight

Desteklenir: 3

Ayrıca bkz.

Başvuru

Control.LazyExtensions Modülü (F#)

Lazy<T>

Yavaş hesaplamaları (F #)

Değişiklik Geçmişi

Tarih

Geçmiş

Nedeni

Mayıs 2010

Eklenen kod örneği.

Bilgi geliştirme.