JobOperations.AddTaskAsync Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
AddTaskAsync(String, CloudTask, ConcurrentDictionary<Type,IFileStagingArtifact>, IEnumerable<BatchClientBehavior>, CancellationToken) |
Fügt einem Auftrag eine einzelne Aufgabe hinzu. Verwenden Sie JobOperations.AddTaskAsync, um mehrere Aufgaben hinzuzufügen. |
AddTaskAsync(String, IEnumerable<CloudTask>, BatchClientParallelOptions, ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>, Nullable<TimeSpan>, IEnumerable<BatchClientBehavior>) |
Fügt einem Auftrag Aufgaben hinzu. |
AddTaskAsync(String, CloudTask, ConcurrentDictionary<Type,IFileStagingArtifact>, IEnumerable<BatchClientBehavior>, CancellationToken)
- Quelle:
- JobOperations.cs
Fügt einem Auftrag eine einzelne Aufgabe hinzu. Verwenden Sie JobOperations.AddTaskAsync, um mehrere Aufgaben hinzuzufügen.
public System.Threading.Tasks.Task AddTaskAsync (string jobId, Microsoft.Azure.Batch.CloudTask taskToAdd, System.Collections.Concurrent.ConcurrentDictionary<Type,Microsoft.Azure.Batch.IFileStagingArtifact> allFileStagingArtifacts = default, System.Collections.Generic.IEnumerable<Microsoft.Azure.Batch.BatchClientBehavior> additionalBehaviors = default, System.Threading.CancellationToken cancellationToken = default);
member this.AddTaskAsync : string * Microsoft.Azure.Batch.CloudTask * System.Collections.Concurrent.ConcurrentDictionary<Type, Microsoft.Azure.Batch.IFileStagingArtifact> * seq<Microsoft.Azure.Batch.BatchClientBehavior> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Function AddTaskAsync (jobId As String, taskToAdd As CloudTask, Optional allFileStagingArtifacts As ConcurrentDictionary(Of Type, IFileStagingArtifact) = Nothing, Optional additionalBehaviors As IEnumerable(Of BatchClientBehavior) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task
Parameter
- jobId
- String
Die ID des Auftrags, dem die Aufgabe hinzugefügt werden soll.
- allFileStagingArtifacts
- ConcurrentDictionary<Type,IFileStagingArtifact>
Eine optionale Sammlung zum Anpassen und Empfangen von Informationen zum Datei-Stagingprozess (siehe FilesToStage). Weitere Informationen finden Sie unter IFileStagingArtifact.
- additionalBehaviors
- IEnumerable<BatchClientBehavior>
Eine Auflistung von BatchClientBehavior Instanzen, die auf die Batch-Dienstanforderung nach CustomBehaviorsangewendet werden.
- cancellationToken
- CancellationToken
Ein CancellationToken zum Steuern der Lebensdauer des asynchronen Vorgangs.
Gibt zurück
Ein Task-Objekt, das den asynchronen Vorgang darstellt.
Hinweise
Jeder Aufruf dieser Methode verursacht eine Anforderung an den Batch-Dienst. Daher ist die Verwendung dieser Methode zum Hinzufügen mehrerer Aufgaben weniger effizient als die Verwendung einer Massenzufügungsmethode und kann HTTP-Verbindungseinschränkungen verursachen. Wenn Sie viele dieser Vorgänge parallel ausführen und clientseitige Timeouts sehen, lesen http://msdn.microsoft.com/en-us/library/system.net.servicepointmanager.defaultconnectionlimit%28v=vs.110%29.aspx Sie oder verwenden Sie die Überladung mit mehreren Aufgaben von AddTaskAsync.
Der Vorgang "Task hinzufügen" wird asynchron ausgeführt.
Gilt für:
AddTaskAsync(String, IEnumerable<CloudTask>, BatchClientParallelOptions, ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>, Nullable<TimeSpan>, IEnumerable<BatchClientBehavior>)
- Quelle:
- JobOperations.cs
Fügt einem Auftrag Aufgaben hinzu.
public System.Threading.Tasks.Task AddTaskAsync (string jobId, System.Collections.Generic.IEnumerable<Microsoft.Azure.Batch.CloudTask> tasksToAdd, Microsoft.Azure.Batch.BatchClientParallelOptions parallelOptions = default, System.Collections.Concurrent.ConcurrentBag<System.Collections.Concurrent.ConcurrentDictionary<Type,Microsoft.Azure.Batch.IFileStagingArtifact>> fileStagingArtifacts = default, TimeSpan? timeout = default, System.Collections.Generic.IEnumerable<Microsoft.Azure.Batch.BatchClientBehavior> additionalBehaviors = default);
member this.AddTaskAsync : string * seq<Microsoft.Azure.Batch.CloudTask> * Microsoft.Azure.Batch.BatchClientParallelOptions * System.Collections.Concurrent.ConcurrentBag<System.Collections.Concurrent.ConcurrentDictionary<Type, Microsoft.Azure.Batch.IFileStagingArtifact>> * Nullable<TimeSpan> * seq<Microsoft.Azure.Batch.BatchClientBehavior> -> System.Threading.Tasks.Task
Public Function AddTaskAsync (jobId As String, tasksToAdd As IEnumerable(Of CloudTask), Optional parallelOptions As BatchClientParallelOptions = Nothing, Optional fileStagingArtifacts As ConcurrentBag(Of ConcurrentDictionary(Of Type, IFileStagingArtifact)) = Nothing, Optional timeout As Nullable(Of TimeSpan) = Nothing, Optional additionalBehaviors As IEnumerable(Of BatchClientBehavior) = Nothing) As Task
Parameter
- jobId
- String
Die ID des Auftrags, dem die Aufgaben hinzugefügt werden sollen.
- tasksToAdd
- IEnumerable<CloudTask>
Die CloudTasks, die hinzugefügt werden sollen.
- parallelOptions
- BatchClientParallelOptions
Steuert die Anzahl gleichzeitiger paralleler AddTaskCollection-Anforderungen, die an den Batch-Dienst ausgegeben werden. Jede AddTaskCollection-Anforderung enthält die meisten MaxTasksInSingleAddTaskCollectionRequest Aufgaben darin. Steuert auch das Abbruchtoken für den Vorgang. Wenn nicht angegeben, wird der Standardwert verwendet (siehe BatchClientParallelOptions.)
- fileStagingArtifacts
- ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>
Eine optionale Auflistung zum Empfangen von Informationen zum Datei-Stagingprozess (siehe FilesToStage). Für jede Gruppe von Aufgaben, die für die ConcurrentBag<T> Übermittlung an den Batch-Dienst gruppiert sind, wird ein Eintrag hinzugefügt. Im Gegensatz zu Einzeltasks können Sie diesen Parameter nicht verwenden, um den Datei-Stagingprozess anzupassen. Weitere Informationen zum Format der einzelnen Einträge finden Sie unter IFileStagingArtifact.
- additionalBehaviors
- IEnumerable<BatchClientBehavior>
Eine Auflistung von BatchClientBehavior Instanzen, die auf die Batch-Dienstanforderung nach CustomBehaviorsangewendet werden.
Gibt zurück
Ein Task-Objekt, das den asynchronen Vorgang darstellt.
Ausnahmen
Wird ausgelöst, wenn eine oder mehrere Anforderungen an den Batch-Dienst fehlschlagen.
Hinweise
Der Vorgang "Task hinzufügen" wird asynchron ausgeführt.
Diese Methode ist nicht atomar; Das heißt, es ist möglich, dass die -Methode mit dem Hinzufügen von Aufgaben beginnt und dann fehlschlägt. Die Auflistung der hinzuzufügenden Aufgaben wird höchstens MaxTasksInSingleAddTaskCollectionRequestin Blöcke mit größe unterteilt, und für jeden Block wird eine AddTaskCollection-Anforderung ausgegeben. Anforderungen können parallel gemäß parallelOptions
ausgestellt werden.
Beim Ausgeben einer großen Anzahl gleichzeitiger Anforderungen an den Batch-Dienst können HTTP-Verbindungseinschränkungen auftreten. Wenn Sie viele dieser Vorgänge parallel ausführen (oder einen großen MaxDegreeOfParallelism in den parallelOptions angegeben haben) und clientseitige Timeouts angezeigt werden, lesen http://msdn.microsoft.com/en-us/library/system.net.servicepointmanager.defaultconnectionlimit%28v=vs.110%29.aspx Sie .
Der Fortschritt des Vorgangs bei Fehlern wird durch AddTaskCollectionResultHandler das Verhalten bestimmt. Normalerweise müssen Sie dieses Verhalten nicht angeben, da der Batch-Client einen Standardwert verwendet, der unter normalen Umständen funktioniert. Wenn Sie dieses Verhalten anpassen möchten, geben Sie einen AddTaskCollectionResultHandler in der - oder additionalBehaviors
-CustomBehaviorsAuflistung an.
Gilt für:
Azure SDK for .NET