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 başka iş parçacığı sayısı değeri de computing önlemek için kullanılır.

Ad alanı/modül yol: Microsoft.FSharp.Control.LazyExtensions

Derleme: FSharp.Core (FSharp.Core.dll),

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

// Usage:
lazy.Force ()

Dönüş Değeri

Değeri yavaş nesnesi.

Örnek

Aşağıdaki kod kullanımları gösterilmektedir 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

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

  

Platformlar

Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Sürüm Bilgisi

F# Çekirdek Kitaplığı sürümleri

Desteklenen: 2.0

Ayrıca bkz.

Başvuru

Control.LazyExtensions Modülü (F#)

Lazy<T>

Tembel hesaplamaları (F#)