Partager via


CloudJob.AddTask Méthode

Définition

Surcharges

AddTask(CloudTask, IEnumerable<BatchClientBehavior>)

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

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

Ajoute des tâches à un travail.

AddTask(CloudTask, IEnumerable<BatchClientBehavior>)

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

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

Paramètres

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 demande 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’attente côté client (un TaskCanceledException), consultez http://msdn.microsoft.com/en-us/library/system.net.servicepointmanager.defaultconnectionlimit%28v=vs.110%29.aspx ou utilisez AddTask(String, IEnumerable<CloudTask>, BatchClientParallelOptions, ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>, Nullable<TimeSpan>, IEnumerable<BatchClientBehavior>).

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

S’applique à

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

Ajoute des tâches à un travail.

public void AddTask (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 : 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 (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

tasksToAdd
IEnumerable<CloudTask>

CloudTask à ajouter.

parallelOptions
BatchClientParallelOptions

Contrôle le nombre de requêtes AddTaskCollection simultanées émises pour le service Batch. Chaque requête AddTaskCollection contient au maximum les MaxTasksInSingleAddTaskCollectionRequest tâches qu’elle contient. Contrôle également le jeton d’annulation de 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 soumission au service Batch. Contrairement aux ajouts à tâche unique, vous ne pouvez pas utiliser ce paramètre pour personnaliser le processus de préproduction de fichiers. Pour plus d’informations sur le format de chaque entrée, consultez IFileStagingArtifact.

timeout
Nullable<TimeSpan>

Durée après laquelle l’opération expire.

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 de blocage ; pour un équivalent non bloquant, consultez AddTaskAsync(IEnumerable<CloudTask>, BatchClientParallelOptions, ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>, Nullable<TimeSpan>, IEnumerable<BatchClientBehavior>).

Cette méthode n’est pas atomique ; autrement dit, il est possible pour la méthode de commencer à ajouter des tâches, puis d’échouer. La collection de tâches à ajouter est divisée en blocs de taille au maximum MaxTasksInSingleAddTaskCollectionRequestet une requête AddTaskCollection est émise pour chaque segment. 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 la plupart de ces opérations en parallèle (ou si vous avez spécifié un grand MaxDegreeOfParallelism dans parallelOptions) et que vous voyez des délais d’expiration côté client (a TaskCanceledException), consultez http://msdn.microsoft.com/en-us/library/system.net.servicepointmanager.defaultconnectionlimit%28v=vs.110%29.aspx .

La progression de l’opération face aux 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 à