Partager via


JobOperations.AddTask Méthode

Définition

Surcharges

AddTask(String, CloudTask, IEnumerable<BatchClientBehavior>)

Ajoute une seule tâche à un travail. Pour ajouter plusieurs tâches, utilisez JobOperations.AddTaskAsync.

AddTask(String, IEnumerable<CloudTask>, BatchClientParallelOptions, ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>, Nullable<TimeSpan>, IEnumerable<BatchClientBehavior>)

Ajoute des tâches à un travail.

AddTask(String, CloudTask, IEnumerable<BatchClientBehavior>)

Ajoute une seule tâche à un travail. Pour ajouter plusieurs tâches, utilisez JobOperations.AddTaskAsync.

public System.Collections.Concurrent.ConcurrentDictionary<Type,Microsoft.Azure.Batch.IFileStagingArtifact> AddTask (string jobId, Microsoft.Azure.Batch.CloudTask taskToAdd, System.Collections.Generic.IEnumerable<Microsoft.Azure.Batch.BatchClientBehavior> additionalBehaviors = default);
member this.AddTask : string * Microsoft.Azure.Batch.CloudTask * seq<Microsoft.Azure.Batch.BatchClientBehavior> -> System.Collections.Concurrent.ConcurrentDictionary<Type, Microsoft.Azure.Batch.IFileStagingArtifact>
Public Function AddTask (jobId As String, taskToAdd As CloudTask, Optional additionalBehaviors As IEnumerable(Of BatchClientBehavior) = Nothing) As ConcurrentDictionary(Of Type, IFileStagingArtifact)

Paramètres

jobId
String

ID du travail auquel ajouter la tâche.

taskToAdd
CloudTask

CloudTask à ajouter.

additionalBehaviors
IEnumerable<BatchClientBehavior>

Collection d’instances BatchClientBehavior appliquées à la demande de service Batch après le CustomBehaviors.

Retours

Collection d’informations sur le processus de préproduction de fichiers (voir FilesToStage). Pour plus d'informations, consultez IFileStagingArtifact.

Remarques

Chaque appel à cette méthode entraîne une requête adressée au service Batch. Par conséquent, l’utilisation de cette méthode pour ajouter plusieurs tâches est moins efficace que l’utilisation d’une méthode d’ajout en bloc et peut entraîner des restrictions de connexion HTTP. Si vous effectuez un grand nombre de ces opérations en parallèle et que vous voyez des délais d’expiration côté client, consultez http://msdn.microsoft.com/en-us/library/system.net.servicepointmanager.defaultconnectionlimit%28v=vs.110%29.aspx ou utilisez la surcharge à plusieurs tâches de AddTask.

Il s’agit d’une opération bloquante. Pour un équivalent non bloquant, consultez AddTaskAsync(String, CloudTask, ConcurrentDictionary<Type,IFileStagingArtifact>, IEnumerable<BatchClientBehavior>, CancellationToken).

S’applique à

AddTask(String, IEnumerable<CloudTask>, BatchClientParallelOptions, ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>, Nullable<TimeSpan>, IEnumerable<BatchClientBehavior>)

Ajoute des tâches à un travail.

public void AddTask (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.AddTask : 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> -> unit
Public Sub AddTask (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)

Paramètres

jobId
String

ID du travail auquel ajouter les tâches.

tasksToAdd
IEnumerable<CloudTask>

CloudTask à ajouter.

parallelOptions
BatchClientParallelOptions

Contrôle le nombre de demandes AddTaskCollection parallèles simultanées émises pour le service Batch. Chaque requête AddTaskCollection contient la plupart des MaxTasksInSingleAddTaskCollectionRequest tâches qu’elle contient. Contrôle également le jeton d’annulation pour l’opération. En cas d’omission, la valeur par défaut est utilisée (voir BatchClientParallelOptions.)

fileStagingArtifacts
ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>

Collection facultative pour recevoir des informations sur le processus de préproduction de fichiers (voir FilesToStage). Une entrée est ajoutée au ConcurrentBag<T> pour chaque ensemble de tâches regroupées pour la soumission au service Batch. Contrairement aux ajouts à tâche unique, vous ne pouvez pas utiliser ce paramètre pour personnaliser le processus de mise en lots des fichiers. Pour plus d’informations sur le format de chaque entrée, consultez IFileStagingArtifact.

timeout
Nullable<TimeSpan>

Durée d’expiration de l’opération.

additionalBehaviors
IEnumerable<BatchClientBehavior>

Collection d’instances BatchClientBehavior appliquées à la demande de service Batch après le CustomBehaviors.

Exceptions

Levée si une ou plusieurs demandes adressées au service Batch échouent.

Remarques

Il s’agit d’une opération bloquante ; pour un équivalent non bloquant, consultez AddTaskAsync(String, IEnumerable<CloudTask>, BatchClientParallelOptions, ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>, Nullable<TimeSpan>, IEnumerable<BatchClientBehavior>).

Cette méthode n’est pas atomique ; autrement dit, il est possible que la méthode commence à ajouter des tâches, puis échoue. La collection de tâches à ajouter est divisée en blocs de taille au maximum MaxTasksInSingleAddTaskCollectionRequestet une requête AddTaskCollection est émise pour chaque bloc. Les demandes peuvent être émises en parallèle en fonction de .parallelOptions

L’émission d’un grand nombre de requêtes simultanées au service Batch peut entraîner des restrictions de connexion HTTP. Si vous effectuez un grand nombre de ces opérations en parallèle (ou si vous avez spécifié un maxDegreeOfParallelism volumineux dans parallelOptions) et que vous voyez des délais d’expiration côté client, consultez http://msdn.microsoft.com/en-us/library/system.net.servicepointmanager.defaultconnectionlimit%28v=vs.110%29.aspx .

La progression de l’opération en cas d’erreurs est déterminée par AddTaskCollectionResultHandler le comportement. Normalement, vous n’avez pas besoin de spécifier ce comportement, car le client Batch utilise une valeur par défaut qui fonctionne dans des circonstances normales. Si vous souhaitez personnaliser ce comportement, spécifiez un AddTaskCollectionResultHandler dans les CustomBehaviors collections ou additionalBehaviors .

S’applique à