Aracılığıyla paylaş


ParallelForEach<T> Sınıf

Tanım

Bir koleksiyonun öğelerini numaralandırır ve koleksiyonun her öğesi için paralel olarak eklenmiş bir deyim yürütür.

generic <typename T>
public ref class ParallelForEach sealed : System::Activities::NativeActivity
[System.Windows.Markup.ContentProperty("Body")]
public sealed class ParallelForEach<T> : System.Activities.NativeActivity
[<System.Windows.Markup.ContentProperty("Body")>]
type ParallelForEach<'T> = class
    inherit NativeActivity
Public NotInheritable Class ParallelForEach(Of T)
Inherits NativeActivity

Tür Parametreleri

T

Koleksiyonda sağlanan değerlerin Values türü.

Devralma
ParallelForEach<T>
Öznitelikler

Örnekler

Aşağıdaki kod örneği etkinlik ParallelForEach<T> oluşturmayı gösterir. Bu örnek , Kurumsal Satın Alma İşlemi örneğinden alınmaktadır.

// invite all vendors and wait for their proposals
new ParallelForEach<Vendor>
{
    DisplayName = "Get vendor proposals",
    Values = new InArgument<IEnumerable<Vendor>>(ctx =>this.Rfp.Get(ctx).InvitedVendors),
    Body = new ActivityAction<Vendor>()
    {
        Argument = iterationVariableVendor,
        Handler = new Sequence
        {
            Variables = { tmpValue },
            Activities =
            {
                // waits for a vendor proposal (creates a bookmark for a vendor)
                new WaitForVendorProposal
                {
                    VendorId = new LambdaValue<int>(ctx =>iterationVariableVendor.Get(ctx).Id) ,
                    Result = new OutArgument<double>(tmpValue)
                },

                // after the vendor proposal is received, it is registered in the Request for Proposals
                new InvokeMethod
                {
                    TargetObject = new InArgument<RequestForProposal>(ctx =>this.Rfp.Get(ctx)),
                    MethodName = "RegisterProposal",
                    Parameters =
                    {
                        new InArgument<Vendor>(iterationVariableVendor),
                        new InArgument<double>(tmpValue)
                    }
                },
            }
        }
    }
},

Açıklamalar

Katıştırılmış deyimler birlikte zamanlanır ve zaman uyumsuz olarak çalıştırılır, ancak zamanlanmış etkinliklerin kendileri zaman uyumsuz olmadığı sürece (mesajlaşma etkinlikleri, InvokeMethodveya türetilen AsyncCodeActivityetkinlikler gibi), ayrı iş parçacıklarında çalışmazlar, bu nedenle ardışık her etkinlik yalnızca önceden zamanlanmış etkinlik tamamlandığında veya boşta kaldığında yürütülür. Bu etkinliğin alt etkinliklerinin hiçbiri zaman uyumsuz değilse veya boşta kalıyorsa, bu etkinlik bir ForEach<T> etkinliğin yürüttüğü gibi yürütülür.

Oluşturucular

ParallelForEach<T>()

ParallelForEach<T> sınıfının yeni bir örneğini oluşturur.

Özellikler

Body

Koleksiyonda ActivityActionValues yer alan her değer için bir kez yürütülen.

CacheId

İş akışı tanımı kapsamında benzersiz olan önbelleğin tanımlayıcısını alır.

(Devralındığı yer: Activity)
CanInduceIdle

Etkinliğin iş akışının boşta olmasına neden olup olmadığını gösteren bir değer alır veya ayarlar.

(Devralındığı yer: NativeActivity)
CompletionCondition

Her yineleme tamamlandıktan sonra değerlendirilir.

Constraints

için Activitydoğrulama sağlamak üzere yapılandırılabilir etkinlikler koleksiyonunu Constraint alır.

(Devralındığı yer: Activity)
DisplayName

Hata ayıklama, doğrulama, özel durum işleme ve izleme için kullanılan isteğe bağlı kolay adı alır veya ayarlar.

(Devralındığı yer: Activity)
Id

İş akışı tanımı kapsamında benzersiz bir tanımlayıcı alır.

(Devralındığı yer: Activity)
Implementation

Etkinliğin yürütme mantığı.

(Devralındığı yer: NativeActivity)
ImplementationVersion

Etkinliğin uygulama sürümünü alır veya ayarlar.

(Devralındığı yer: NativeActivity)
Values

içinde yer alan Bodyetkinliğin her yinelemesi için parametre olarak kullanılan değerlerin koleksiyonu.

Yöntemler

Abort(NativeActivityAbortContext)

Türetilmiş bir sınıfta uygulandığında, durdurulan etkinliğe yanıt olarak eylemler gerçekleştirir.

(Devralındığı yer: NativeActivity)
CacheMetadata(ActivityMetadata)

Uygulanmaz. CacheMetadata(NativeActivityMetadata) Bunun yerine yöntemini kullanın.

(Devralındığı yer: NativeActivity)
CacheMetadata(NativeActivityMetadata)

Etkinliğin bağımsız değişkenlerinin, değişkenlerinin, alt etkinliklerinin ve etkinlik temsilcilerinin açıklamasını oluşturur ve doğrular.

(Devralındığı yer: NativeActivity)
Cancel(NativeActivityContext)

Türetilmiş bir sınıfta uygulandığında, etkinliğin düzgün bir şekilde erken tamamlanmasına neden olmak için mantık çalıştırır.

(Devralındığı yer: NativeActivity)
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
Execute(NativeActivityContext)

Türetilmiş bir sınıfta uygulandığında, etkinliğin yürütme mantığını çalıştırır.

(Devralındığı yer: NativeActivity)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
OnCreateDynamicUpdateMap(NativeActivityUpdateMapMetadata, Activity)

Dinamik güncelleştirme için harita oluştururken bir olay oluşturur.

(Devralındığı yer: NativeActivity)
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Dinamik güncelleştirme için harita oluştururken bir olay oluşturur.

(Devralındığı yer: NativeActivity)
ShouldSerializeDisplayName()

Özelliğin DisplayName seri hale getirilip getirilmeyeceğini gösterir.

(Devralındığı yer: Activity)
ToString()

ve DisplayNameActivitydeğerini içeren Id bir String döndürür.

(Devralındığı yer: Activity)
UpdateInstance(NativeActivityUpdateContext)

örneğini NativeActivityGüncelleştirmeler.

(Devralındığı yer: NativeActivity)

Şunlara uygulanır