أسلوب: Async.StartChild<'T> (F#)

يبدأ عملية حسابية تابعة فرعية ضمن سير العمل الغير متزامن. يسمح هذا بحسابات متعددة غير متزامنة بتم تنفيذها في نفس الوقت.

مساحة الاسم/مسار الوحدة النمطية: Microsoft.FSharp.Control

التجميع: FSharp.Core (في FSharp.Core.dll)

// Signature:
static member StartChild : Async<'T> * ?int -> Async<Async<'T>>

// Usage:
Async.StartChild (computation)
Async.StartChild (computation, millisecondsTimeout = millisecondsTimeout)

المعلمات

  • computation
    اكتب: Async<'T>

    احتساب الفرع.

  • millisecondsTimeout
    اكتب: عدد صحيح

    قيمة المهلة بالمللي ثانية. إذا كان ملف هو المتوفرة ثم غير القيمة افتراضية هو-1، الذي يتوافق مع System.Threading.Timeout.Infinite.

القيمة المُرجعة

عملية حسابية جديده تقوم بانتظار انتهاء العملية الحسابية المدخلة.

ملاحظات

يجب استخدام هذه الطريقة عادة كفوري يمين-hand-الجانب let!ربط في F# غير متزامن سير عمل، بمعنى:

 async { 
    ...
    let! completor1 = childComputation1
    |> Async.StartChild
    let! completor2 = childComputation2
    |> Async.StartChild
    ... 
    let! result1 = completor1
    let! result2 = completor2
     ... }

When used في this way, each استخدم of StartChild starts an مثيل of childComputation و إرجاع a completor كائن representing a computation إلى wait for the completion of the تشغيل. عند التنفيذ، ينتظر المكمل إكمال ال childComputation.

الأنظمة الأساسية

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

معلومات الإصدار

وقت التشغيل #F

معتمد في: 2.0, 4.0

Silverlight

معتمد في: 3

راجع أيضًا:

موارد أخرى

الفئة Control.Async

مساحة الاسم Microsoft.FSharp.Control