CloudJob.AddTaskAsync メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
AddTaskAsync(CloudTask, ConcurrentDictionary<Type,IFileStagingArtifact>, IEnumerable<BatchClientBehavior>, CancellationToken)
この CloudJobに 1 つのタスクを追加します。 複数のタスクを追加するには、 JobOperations.AddTaskAsync を使用します。
public System.Threading.Tasks.Task AddTaskAsync (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 : 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 (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
パラメーター
- allFileStagingArtifacts
- ConcurrentDictionary<Type,IFileStagingArtifact>
ファイル ステージング プロセスに関する情報をカスタマイズおよび受信するための省略可能なコレクション (「」を参照 FilesToStage)。 詳細については、「IFileStagingArtifact」を参照してください。
- additionalBehaviors
- IEnumerable<BatchClientBehavior>
の後の BatchClientBehavior Batch サービス要求に適用されるインスタンスの CustomBehaviorsコレクション。
- cancellationToken
- CancellationToken
CancellationToken非同期操作の有効期間を制御するための 。
戻り値
非同期操作を表す Task。
注釈
このメソッドを呼び出すたびに、Batch サービスへの要求が発生します。 したがって、このメソッドを使用して複数のタスクを追加することは、一括追加メソッドを使用するよりも効率が低く、HTTP 接続の制限が発生する可能性があります。 これらの操作の多くを並列で実行していて、クライアント側のタイムアウト (a TaskCanceledException) が表示されている場合は、 を参照 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>)してください。
タスクの追加操作は非同期的に実行されます。
適用対象
AddTaskAsync(IEnumerable<CloudTask>, BatchClientParallelOptions, ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>, Nullable<TimeSpan>, IEnumerable<BatchClientBehavior>)
ジョブにタスクを追加します。
public System.Threading.Tasks.Task AddTaskAsync (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 : 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 (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
パラメーター
- tasksToAdd
- IEnumerable<CloudTask>
追加する CloudTask。
- parallelOptions
- BatchClientParallelOptions
Batch サービスに発行される同時並列 AddTaskCollection 要求の数を制御します。 各 AddTaskCollection 要求には、ほとんどの MaxTasksInSingleAddTaskCollectionRequest タスクが含まれています。 また、操作のキャンセル トークンも制御します。 省略すると、既定値が使用されます (「」を参照)。BatchClientParallelOptions
- fileStagingArtifacts
- ConcurrentBag<ConcurrentDictionary<Type,IFileStagingArtifact>>
ファイル ステージング プロセスに関する情報を受け取る省略可能なコレクション (「」を参照 FilesToStage)。 Batch サービスへの送信用に ConcurrentBag<T> グループ化されたタスクの各セットの エントリが に追加されます。 単一タスクの追加とは異なり、このパラメーターを使用してファイルのステージング プロセスをカスタマイズすることはできません。 各エントリの形式の詳細については、「」を参照してください IFileStagingArtifact。
- additionalBehaviors
- IEnumerable<BatchClientBehavior>
の後の BatchClientBehavior Batch サービス要求に適用されるインスタンスの CustomBehaviorsコレクション。
戻り値
非同期操作を表す Task オブジェクト。
例外
Batch サービスに対する 1 つ以上の要求が失敗した場合にスローされます。
注釈
タスクの追加操作は非同期的に実行されます。
このメソッドはアトミックではありません。つまり、 メソッドがタスクの追加を開始してから失敗する可能性があります。 追加するタスクのコレクションは、最大 MaxTasksInSingleAddTaskCollectionRequestサイズのチャンクに分割され、チャンクごとに AddTaskCollection 要求が発行されます。 要求は、 に従って並列で parallelOptions
発行できます。
Batch サービスに多数の同時要求を発行すると、HTTP 接続の制限が発生する可能性があります。 これらの操作の多くを並列で実行している (または parallelOptions で大きな MaxDegreeOfParallelism を指定している) 場合、クライアント側のタイムアウト (a TaskCanceledException) が表示される場合は、 を参照してください http://msdn.microsoft.com/en-us/library/system.net.servicepointmanager.defaultconnectionlimit%28v=vs.110%29.aspx 。
エラーが発生した場合の操作の進行状況は、動作によって AddTaskCollectionResultHandler 決まります。 Batch クライアントは通常の状況で動作する既定値を使用するため、通常はこの動作を指定する必要はありません。 この動作をカスタマイズする場合は、 コレクションまたは additionalBehaviors
コレクションで AddTaskCollectionResultHandler をCustomBehaviors指定します。