/// <summary> /// Terminates the specified Task. /// </summary> /// <remarks> /// When the Task has been terminated, it moves to the completed state. For /// multi-instance Tasks, the terminate Task operation applies synchronously to /// the primary task; subtasks are then terminated asynchronously in the /// background. /// </remarks> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='jobId'> /// The ID of the Job containing the Task. /// </param> /// <param name='taskId'> /// The ID of the Task to terminate. /// </param> /// <param name='taskTerminateOptions'> /// Additional parameters for the operation /// </param> public static TaskTerminateHeaders Terminate(this ITaskOperations operations, string jobId, string taskId, TaskTerminateOptions taskTerminateOptions = default(TaskTerminateOptions)) { return(operations.TerminateAsync(jobId, taskId, taskTerminateOptions).GetAwaiter().GetResult()); }
/// <summary> /// Terminates the specified Task. /// </summary> /// <remarks> /// When the Task has been terminated, it moves to the completed state. For /// multi-instance Tasks, the terminate Task operation applies synchronously to /// the primary task; subtasks are then terminated asynchronously in the /// background. /// </remarks> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='jobId'> /// The ID of the Job containing the Task. /// </param> /// <param name='taskId'> /// The ID of the Task to terminate. /// </param> /// <param name='taskTerminateOptions'> /// Additional parameters for the operation /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <TaskTerminateHeaders> TerminateAsync(this ITaskOperations operations, string jobId, string taskId, TaskTerminateOptions taskTerminateOptions = default(TaskTerminateOptions), CancellationToken cancellationToken = default(CancellationToken)) { using (var _result = await operations.TerminateWithHttpMessagesAsync(jobId, taskId, taskTerminateOptions, null, cancellationToken).ConfigureAwait(false)) { return(_result.Headers); } }
/// <summary> /// Terminates the specified task. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='jobId'> /// The id of the job containing the task. /// </param> /// <param name='taskId'> /// The id of the task to terminate. /// </param> /// <param name='taskTerminateOptions'> /// Additional parameters for the operation /// </param> public static TaskTerminateHeaders Terminate(this ITaskOperations operations, string jobId, string taskId, TaskTerminateOptions taskTerminateOptions = default(TaskTerminateOptions)) { return(System.Threading.Tasks.Task.Factory.StartNew(s => ((ITaskOperations)s).TerminateAsync(jobId, taskId, taskTerminateOptions), operations, System.Threading.CancellationToken.None, System.Threading.Tasks.TaskCreationOptions.None, System.Threading.Tasks.TaskScheduler.Default).Unwrap().GetAwaiter().GetResult()); }