Seq.initInfinite<'T> — Funkcja (F#)
Generuje nowy sekwencji, gdy podstawy, zwróci kolejnych elementów przez wywołanie funkcji danego.
Ścieżka obszaru nazw/modułu: Microsoft.FSharp.Collections.Seq
Zestaw: FSharp.Core (w FSharp.Core.dll)
// Signature:
Seq.initInfinite : (int -> 'T) -> seq<'T>
// Usage:
Seq.initInfinite initializer
Parametry
initializer
Typ: int -> 'TFunkcja, która generuje w kolejności od indeksu danego elementu.
Wartość zwracana
Sekwencja wynik.
Uwagi
Wyniki wywołania funkcji nie zostaną zapisane, które jest funkcja zostanie ponownie jako niezbędne do generowania elementów.Funkcja jest przekazywany indeks elementu generowane.
Iteracja może kontynuować do Int32.MaxValue.
Ta funkcja o nazwie InitializeInfinite w skompilowane zestawy.Jeżeli języka, niż F# lub przez odbicie, uzyskują dostęp do funkcji, należy użyć tej nazwy.
Bezpieczeństwo wątków
Sekwencja zwracane mogą być przekazywane między wątki bezpiecznie.Jednakże poszczególnych IEnumerator wygenerowany z sekwencji zwracane wartości nie jest dostępna jednocześnie.
Przykład
Poniższy przykład ilustruje użycie Seq.initInfinite utworzenia sekwencji 1/n^2, z przemian znaki.
let seqInfinite = Seq.initInfinite (fun index ->
let n = float( index + 1 )
1.0 / (n * n * (if ((index + 1) % 2 = 0) then 1.0 else -1.0)))
printfn "%A" seqInfinite
Platformy
Windows 8, Windows 7, Windows Server 2012 Windows Server 2008 R2
Informacje o wersji
F# Core wersji biblioteki
Obsługiwane: 2.0, 4.0, przenośne