ParallelForEach<T> Klasse

Definition

Listet die Elemente einer Auflistung auf und führt eine eingebettete Anweisung für jedes Element der Auflistung parallel aus.

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

Typparameter

T

Der Typ der in der Values Auflistung bereitgestellten Werte.

Vererbung
ParallelForEach<T>
Attribute

Beispiele

Im folgenden Codebeispiel wird das Erstellen einer ParallelForEach<T> Aktivität veranschaulicht. Dieses Beispiel stammt aus dem Beispiel für den Unternehmenskaufprozess .

// 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)
                    }
                },
            }
        }
    }
},

Hinweise

Die eingebetteten Anweisungen werden asynchron geplant und ausgeführt, es sei denn, die geplanten Aktivitäten selbst sind asynchron (z. B. Messagingaktivitäten InvokeMethod, oder Aktivitäten, die abgeleitet AsyncCodeActivitywerden), werden nicht für separate Threads ausgeführt, sodass jede aufeinander folgende Aktivität nur ausgeführt wird, wenn die zuvor geplante Aktivität abgeschlossen oder im Leerlauf verläuft. Wenn keine der untergeordneten Aktivitäten dieser Aktivität asynchron ist oder im Leerlauf bleibt, wird diese Aktivität auf die gleiche Weise ausgeführt wie eine ForEach<T> Aktivität.

Konstruktoren

Name Beschreibung
ParallelForEach<T>()

Erstellt eine neue Instanz der ParallelForEach<T> Klasse.

Eigenschaften

Name Beschreibung
Body

Der ActivityAction Wert, der einmal für jeden in der Values Auflistung enthaltenen Wert ausgeführt wird.

CacheId

Ruft den Bezeichner des Caches ab, der innerhalb des Bereichs der Workflowdefinition eindeutig ist.

(Geerbt von Activity)
CanInduceIdle

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob die Aktivität dazu führen kann, dass der Workflow im Leerlauf ist.

(Geerbt von NativeActivity)
CompletionCondition

Ausgewertet, nachdem jede Iteration abgeschlossen wurde.

Constraints

Ruft eine Sammlung von Constraint Aktivitäten ab, die für die ActivityÜberprüfung konfiguriert werden können.

(Geerbt von Activity)
DisplayName

Dient zum Abrufen oder Festlegen eines optionalen Anzeigenamens, der für das Debuggen, die Überprüfung, die Ausnahmebehandlung und die Nachverfolgung verwendet wird.

(Geerbt von Activity)
Id

Ruft einen Bezeichner ab, der im Bereich der Workflowdefinition eindeutig ist.

(Geerbt von Activity)
Implementation

Die Ausführungslogik der Aktivität.

(Geerbt von NativeActivity)
ImplementationVersion

Ruft die Implementierungsversion der Aktivität ab oder legt sie fest.

(Geerbt von NativeActivity)
Values

Die Sammlung von Werten, die als Parameter für jede Iteration der aktivität verwendet werden, die in der Body.

Methoden

Name Beschreibung
Abort(NativeActivityAbortContext)

Wenn sie in einer abgeleiteten Klasse implementiert wird, werden Aktionen als Reaktion auf die abgebrochene Aktivität ausgeführt.

(Geerbt von NativeActivity)
CacheMetadata(ActivityMetadata)

Nicht implementiert. Verwenden Sie stattdessen die CacheMetadata(NativeActivityMetadata) Methode.

(Geerbt von NativeActivity)
CacheMetadata(NativeActivityMetadata)

Erstellt und überprüft eine Beschreibung der Argumente, Variablen, untergeordneten Aktivitäten und Aktivitätsdelegatten der Aktivität.

(Geerbt von NativeActivity)
Cancel(NativeActivityContext)

Wenn sie in einer abgeleiteten Klasse implementiert wird, wird Logik ausgeführt, um einen ordnungsgemäßen frühzeitigen Abschluss der Aktivität zu verursachen.

(Geerbt von NativeActivity)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
Execute(NativeActivityContext)

Wenn sie in einer abgeleiteten Klasse implementiert wird, wird die Ausführungslogik der Aktivität ausgeführt.

(Geerbt von NativeActivity)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
OnCreateDynamicUpdateMap(NativeActivityUpdateMapMetadata, Activity)

Löst ein Ereignis aus, wenn eine Karte für die dynamische Aktualisierung erstellt wird.

(Geerbt von NativeActivity)
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Löst ein Ereignis aus, wenn eine Karte für die dynamische Aktualisierung erstellt wird.

(Geerbt von NativeActivity)
ShouldSerializeDisplayName()

Gibt an, ob die DisplayName Eigenschaft serialisiert werden soll.

(Geerbt von Activity)
ToString()

Gibt einen String Wert zurück, der das Id Und DisplayName des .Activity

(Geerbt von Activity)
UpdateInstance(NativeActivityUpdateContext)

Aktualisiert die Instanz von NativeActivity.

(Geerbt von NativeActivity)

Gilt für: