JobOperations.AddTaskAsync メソッド

定義

オーバーロード

AddTaskAsync(String, CloudTask, ConcurrentDictionary<Type,IFileStagingArtifact>, IEnumerable<BatchClientBehavior>, CancellationToken)

ジョブに 1 つのタスクを追加します。 複数のタスクを追加するには、 JobOperations.AddTaskAsync を使用します

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

ジョブにタスクを追加します。

AddTaskAsync(String, CloudTask, ConcurrentDictionary<Type,IFileStagingArtifact>, IEnumerable<BatchClientBehavior>, CancellationToken)

ソース:
JobOperations.cs

ジョブに 1 つのタスクを追加します。 複数のタスクを追加するには、 JobOperations.AddTaskAsync を使用します

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

パラメーター

jobId
String

タスクを追加するジョブの ID。

taskToAdd
CloudTask

追加する CloudTask

allFileStagingArtifacts
ConcurrentDictionary<Type,IFileStagingArtifact>

ファイル ステージング プロセスに関する情報をカスタマイズおよび受信するための省略可能なコレクション (「」を参照 FilesToStage)。 詳細については、「IFileStagingArtifact」を参照してください。

additionalBehaviors
IEnumerable<BatchClientBehavior>

の後の BatchClientBehavior Batch サービス要求に適用されるインスタンスの CustomBehaviorsコレクション。

cancellationToken
CancellationToken

CancellationToken非同期操作の有効期間を制御するための 。

戻り値

非同期操作を表す Task オブジェクト。

注釈

このメソッドを呼び出すたびに、Batch サービスへの要求が発生します。 したがって、このメソッドを使用して複数のタスクを追加することは、一括追加メソッドを使用するよりも効率が低く、HTTP 接続の制限が発生する可能性があります。 これらの操作の多くを並列で実行していて、クライアント側のタイムアウトが発生している場合は、AddTaskAsync の複数タスク オーバーロードを参照 http://msdn.microsoft.com/en-us/library/system.net.servicepointmanager.defaultconnectionlimit%28v=vs.110%29.aspx するか、使用してください。

タスクの追加操作は非同期的に実行されます。

適用対象

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

ソース:
JobOperations.cs

ジョブにタスクを追加します。

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

パラメーター

jobId
String

タスクを追加するジョブの ID。

tasksToAdd
IEnumerable<CloudTask>

追加する CloudTask

parallelOptions
BatchClientParallelOptions

Batch サービスに発行される同時並列 AddTaskCollection 要求の数を制御します。 各 AddTaskCollection 要求には、ほとんどの MaxTasksInSingleAddTaskCollectionRequest タスクが含まれています。 また、操作のキャンセル トークンも制御します。 省略すると、既定値が使用されます (「」を参照)。BatchClientParallelOptions

fileStagingArtifacts
ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>

ファイル ステージング プロセスに関する情報を受け取る省略可能なコレクション (「」を参照 FilesToStage)。 Batch サービスへの送信用に ConcurrentBag<T> グループ化されたタスクの各セットの エントリが に追加されます。 単一タスクの追加とは異なり、このパラメーターを使用してファイルのステージング プロセスをカスタマイズすることはできません。 各エントリの形式の詳細については、「」を参照してください IFileStagingArtifact

timeout
Nullable<TimeSpan>

操作がタイムアウトするまでの時間。

additionalBehaviors
IEnumerable<BatchClientBehavior>

の後の BatchClientBehavior Batch サービス要求に適用されるインスタンスの CustomBehaviorsコレクション。

戻り値

非同期操作を表す Task オブジェクト。

例外

Batch サービスに対する 1 つ以上の要求が失敗した場合にスローされます。

注釈

タスクの追加操作は非同期的に実行されます。

このメソッドはアトミックではありません。つまり、 メソッドがタスクの追加を開始してから失敗する可能性があります。 追加するタスクのコレクションは、最大 MaxTasksInSingleAddTaskCollectionRequestサイズのチャンクに分割され、チャンクごとに AddTaskCollection 要求が発行されます。 要求は、 に従って並列で parallelOptions発行できます。

Batch サービスに多数の同時要求を発行すると、HTTP 接続の制限が発生する可能性があります。 これらの操作の多くを並列で実行している (または parallelOptions で大きな MaxDegreeOfParallelism を指定している) 場合、クライアント側のタイムアウトが発生している場合は、 を参照してください http://msdn.microsoft.com/en-us/library/system.net.servicepointmanager.defaultconnectionlimit%28v=vs.110%29.aspx 。

エラーが発生した場合の操作の進行状況は、動作によって AddTaskCollectionResultHandler 決まります。 Batch クライアントは通常の状況で動作する既定値を使用するため、通常はこの動作を指定する必要はありません。 この動作をカスタマイズする場合は、 コレクションまたは additionalBehaviors コレクションで AddTaskCollectionResultHandler をCustomBehaviors指定します。

適用対象