JobOperations.AddTask Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
AddTask(String, CloudTask, IEnumerable<BatchClientBehavior>) |
Agrega una sola tarea a un trabajo. Para agregar varias tareas, use JobOperations.AddTaskAsync. |
AddTask(String, IEnumerable<CloudTask>, BatchClientParallelOptions, ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>, Nullable<TimeSpan>, IEnumerable<BatchClientBehavior>) |
Agrega tareas a un trabajo. |
AddTask(String, CloudTask, IEnumerable<BatchClientBehavior>)
Agrega una sola tarea a un trabajo. Para agregar varias tareas, use 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)
Parámetros
- jobId
- String
Identificador del trabajo al que se va a agregar la tarea.
- additionalBehaviors
- IEnumerable<BatchClientBehavior>
Colección de BatchClientBehavior instancias que se aplican a la solicitud de servicio de Batch después de CustomBehaviors.
Devoluciones
Colección de información sobre el proceso de almacenamiento provisional de archivos (vea FilesToStage). Para obtener más información, vea IFileStagingArtifact.
Comentarios
Cada llamada a este método incurre en una solicitud al servicio Batch. Por lo tanto, el uso de este método para agregar varias tareas es menos eficaz que usar un método de adición masiva y puede incurrir en restricciones de conexión HTTP. Si está realizando muchas de estas operaciones en paralelo y ve tiempos de espera del lado cliente, consulte http://msdn.microsoft.com/en-us/library/system.net.servicepointmanager.defaultconnectionlimit%28v=vs.110%29.aspx o use la sobrecarga de varias tareas de AddTask.
Se trata de una operación de bloqueo. Para obtener un equivalente sin bloqueo, vea AddTaskAsync(String, CloudTask, ConcurrentDictionary<Type,IFileStagingArtifact>, IEnumerable<BatchClientBehavior>, CancellationToken).
Se aplica a
AddTask(String, IEnumerable<CloudTask>, BatchClientParallelOptions, ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>, Nullable<TimeSpan>, IEnumerable<BatchClientBehavior>)
Agrega tareas a un trabajo.
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)
Parámetros
- jobId
- String
Identificador del trabajo al que se van a agregar las tareas.
- tasksToAdd
- IEnumerable<CloudTask>
Las instancias de CloudTask que se van a agregar.
- parallelOptions
- BatchClientParallelOptions
Controla el número de solicitudes AddTaskCollection paralelas simultáneas emitidas al servicio Batch. Cada solicitud AddTaskCollection contiene en la mayoría MaxTasksInSingleAddTaskCollectionRequest de las tareas. También controla el token de cancelación de la operación. Si se omite, se usa el valor predeterminado (consulte BatchClientParallelOptions).
- fileStagingArtifacts
- ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>
Colección opcional para recibir información sobre el proceso de almacenamiento provisional de archivos (vea FilesToStage). Se agrega una entrada a ConcurrentBag<T> para cada conjunto de tareas agrupadas para su envío al servicio Batch. A diferencia de lo que agrega una sola tarea, no puede usar este parámetro para personalizar el proceso de almacenamiento provisional de archivos. Para obtener más información sobre el formato de cada entrada, vea IFileStagingArtifact.
Cantidad de tiempo después del cual se agota el tiempo de espera de la operación.
- additionalBehaviors
- IEnumerable<BatchClientBehavior>
Colección de BatchClientBehavior instancias que se aplican a la solicitud de servicio de Batch después de CustomBehaviors.
Excepciones
Se produce si se produce un error en una o varias solicitudes al servicio Batch.
Comentarios
Se trata de una operación de bloqueo; para ver un equivalente sin bloqueo, vea AddTaskAsync(String, IEnumerable<CloudTask>, BatchClientParallelOptions, ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>, Nullable<TimeSpan>, IEnumerable<BatchClientBehavior>).
Este método no es atómico; es decir, es posible que el método empiece a agregar tareas y, a continuación, produzca un error. La colección de tareas que se van a agregar se divide en fragmentos de tamaño como máximo MaxTasksInSingleAddTaskCollectionRequesty se emite una solicitud AddTaskCollection para cada fragmento. Las solicitudes se pueden emitir en paralelo según .parallelOptions
La emisión de un gran número de solicitudes simultáneas al servicio Batch puede incurrir en restricciones de conexión HTTP. Si está realizando muchas de estas operaciones en paralelo (o ha especificado un maxDegreeOfParallelism grande en parallelOptions) y ve tiempos de espera del lado cliente, consulte http://msdn.microsoft.com/en-us/library/system.net.servicepointmanager.defaultconnectionlimit%28v=vs.110%29.aspx .
El progreso de la operación frente a errores viene determinado por AddTaskCollectionResultHandler el comportamiento. Normalmente no es necesario especificar este comportamiento, ya que el cliente de Batch usa un valor predeterminado que funciona en circunstancias normales. Si desea personalizar este comportamiento, especifique un AddTaskCollectionResultHandler en las CustomBehaviors colecciones o additionalBehaviors
.