Метод расширения Lazy.Create<'T> (F#)
Создает отложенное вычисление, которое при принудительном выполнении вычисляет результат заданной функции.
Пространство имен/путь к модулю: Microsoft.FSharp.Control.LazyExtensions
Сборка: FSharp.Core (в FSharp.Core.dll)
// Signature:
type System.Lazy with
member static Create : Lazy<'T>
// Usage:
lazy.Create (creator)
Параметры
creator
Тип: unit -> 'TФункция для предоставления значения при необходимости.
Возвращаемое значение
Созданный объект Lazy.
Пример
В следующем примере кода демонстрируется использование функции Create.
let lazyValue n = Lazy.Create (fun () ->
let rec factorial n =
match n with
| 0 | 1 -> 1
| n -> n * factorial (n - 1)
factorial n)
let lazyVal = lazyValue 10
printfn "%d" (lazyVal.Force())
Результат представляет собой факториал 10.
Платформы
Windows 7, Windows Vista с пакетом обновления 2 (SP2), Windows XP с пакетом обновления 3 (SP3), Windows XP x64 с пакетом обновления 2 (SP2), Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2), Windows Server 2003 с пакетом обновления 2 (SP2)
Сведения о версии
Среда выполнения F#
Поддерживается в версии: 2.0.
Silverlight
Поддерживается в версии 3
См. также
Ссылки
Модуль Control.LazyExtensions (F#)
Журнал изменений
Дата |
Журнал |
Причина |
---|---|---|
Май 2010 |
Добавлен пример кода. |
Улучшение информации. |