TaskFactory<TResult>.ContinueWhenAny 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
创建一个延续任务,它将在提供的组中的任何任务完成后马上开始。
重载
ContinueWhenAny(Task[], Func<Task,TResult>, CancellationToken, TaskContinuationOptions, TaskScheduler)
创建一个延续任务,它将在提供的组中的任何任务完成后马上开始。
public:
System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task ^> ^ tasks, Func<System::Threading::Tasks::Task ^, TResult> ^ continuationFunction, System::Threading::CancellationToken cancellationToken, System::Threading::Tasks::TaskContinuationOptions continuationOptions, System::Threading::Tasks::TaskScheduler ^ scheduler);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny (System.Threading.Tasks.Task[] tasks, Func<System.Threading.Tasks.Task,TResult> continuationFunction, System.Threading.CancellationToken cancellationToken, System.Threading.Tasks.TaskContinuationOptions continuationOptions, System.Threading.Tasks.TaskScheduler scheduler);
member this.ContinueWhenAny : System.Threading.Tasks.Task[] * Func<System.Threading.Tasks.Task, 'Result> * System.Threading.CancellationToken * System.Threading.Tasks.TaskContinuationOptions * System.Threading.Tasks.TaskScheduler -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny (tasks As Task(), continuationFunction As Func(Of Task, TResult), cancellationToken As CancellationToken, continuationOptions As TaskContinuationOptions, scheduler As TaskScheduler) As Task(Of TResult)
参数
- tasks
- Task[]
在一个任务完成时继续执行的任务所在的数组。
- cancellationToken
- CancellationToken
将指派给新的延续任务的取消标记。
- continuationOptions
- TaskContinuationOptions
控制所创建的延续任务的行为的枚举值之一。 NotOn*
和 OnlyOn*
值均无效。
- scheduler
- TaskScheduler
用于计划所创建的延续任务的任务计划程序。
返回
新的延续任务。
例外
continuationOptions
参数指定的 TaskContinuationOptions 值无效。
已释放 tasks
数组中的一个元素。
- 或 -
创建了
cancellationToken
的 CancellationTokenSource 已经被释放。
注解
完成后,任务处于以下状态之一: RanToCompletion、 Faulted或 Canceled 状态。
另请参阅
适用于
ContinueWhenAny(Task[], Func<Task,TResult>)
创建一个延续任务,它将在提供的组中的任何任务完成后马上开始。
public:
System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task ^> ^ tasks, Func<System::Threading::Tasks::Task ^, TResult> ^ continuationFunction);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny (System.Threading.Tasks.Task[] tasks, Func<System.Threading.Tasks.Task,TResult> continuationFunction);
member this.ContinueWhenAny : System.Threading.Tasks.Task[] * Func<System.Threading.Tasks.Task, 'Result> -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny (tasks As Task(), continuationFunction As Func(Of Task, TResult)) As Task(Of TResult)
参数
- tasks
- Task[]
在一个任务完成时继续执行的任务所在的数组。
返回
新的延续任务。
例外
已释放 tasks
数组中的一个元素。
tasks
数组包含 null 值或为空。
注解
完成后,任务处于以下状态之一: RanToCompletion、 Faulted或 Canceled 状态。
另请参阅
适用于
ContinueWhenAny(Task[], Func<Task,TResult>, CancellationToken)
创建一个延续任务,它将在提供的组中的任何任务完成后马上开始。
public:
System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task ^> ^ tasks, Func<System::Threading::Tasks::Task ^, TResult> ^ continuationFunction, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny (System.Threading.Tasks.Task[] tasks, Func<System.Threading.Tasks.Task,TResult> continuationFunction, System.Threading.CancellationToken cancellationToken);
member this.ContinueWhenAny : System.Threading.Tasks.Task[] * Func<System.Threading.Tasks.Task, 'Result> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny (tasks As Task(), continuationFunction As Func(Of Task, TResult), cancellationToken As CancellationToken) As Task(Of TResult)
参数
- tasks
- Task[]
在一个任务完成时继续执行的任务所在的数组。
- cancellationToken
- CancellationToken
将指派给新的延续任务的取消标记。
返回
新的延续任务。
例外
已释放 tasks
数组中的一个元素。
- 或 -
创建了
cancellationToken
的 CancellationTokenSource 已经被释放。
注解
完成后,任务处于以下状态之一: RanToCompletion、 Faulted或 Canceled 状态。
另请参阅
适用于
ContinueWhenAny(Task[], Func<Task,TResult>, TaskContinuationOptions)
创建一个延续任务,它将在提供的组中的任何任务完成后马上开始。
public:
System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task ^> ^ tasks, Func<System::Threading::Tasks::Task ^, TResult> ^ continuationFunction, System::Threading::Tasks::TaskContinuationOptions continuationOptions);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny (System.Threading.Tasks.Task[] tasks, Func<System.Threading.Tasks.Task,TResult> continuationFunction, System.Threading.Tasks.TaskContinuationOptions continuationOptions);
member this.ContinueWhenAny : System.Threading.Tasks.Task[] * Func<System.Threading.Tasks.Task, 'Result> * System.Threading.Tasks.TaskContinuationOptions -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny (tasks As Task(), continuationFunction As Func(Of Task, TResult), continuationOptions As TaskContinuationOptions) As Task(Of TResult)
参数
- tasks
- Task[]
在一个任务完成时继续执行的任务所在的数组。
- continuationOptions
- TaskContinuationOptions
控制所创建的延续任务的行为的枚举值之一。 NotOn*
和 OnlyOn*
值均无效。
返回
新的延续任务。
例外
已释放 tasks
数组中的一个元素。
continuationOptions
参数指定的枚举值无效。
注解
完成后,任务处于以下状态之一: RanToCompletion、 Faulted或 Canceled 状态。
另请参阅
适用于
ContinueWhenAny<TAntecedentResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>,TResult>, CancellationToken, TaskContinuationOptions, TaskScheduler)
创建一个延续任务,它将在提供的组中的任何任务完成后马上开始。
public:
generic <typename TAntecedentResult>
System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task<TAntecedentResult> ^> ^ tasks, Func<System::Threading::Tasks::Task<TAntecedentResult> ^, TResult> ^ continuationFunction, System::Threading::CancellationToken cancellationToken, System::Threading::Tasks::TaskContinuationOptions continuationOptions, System::Threading::Tasks::TaskScheduler ^ scheduler);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny<TAntecedentResult> (System.Threading.Tasks.Task<TAntecedentResult>[] tasks, Func<System.Threading.Tasks.Task<TAntecedentResult>,TResult> continuationFunction, System.Threading.CancellationToken cancellationToken, System.Threading.Tasks.TaskContinuationOptions continuationOptions, System.Threading.Tasks.TaskScheduler scheduler);
member this.ContinueWhenAny : System.Threading.Tasks.Task<'AntecedentResult>[] * Func<System.Threading.Tasks.Task<'AntecedentResult>, 'Result> * System.Threading.CancellationToken * System.Threading.Tasks.TaskContinuationOptions * System.Threading.Tasks.TaskScheduler -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny(Of TAntecedentResult) (tasks As Task(Of TAntecedentResult)(), continuationFunction As Func(Of Task(Of TAntecedentResult), TResult), cancellationToken As CancellationToken, continuationOptions As TaskContinuationOptions, scheduler As TaskScheduler) As Task(Of TResult)
类型参数
- TAntecedentResult
以前的 tasks
结果的类型。
参数
- tasks
- Task<TAntecedentResult>[]
在一个任务完成时继续执行的任务所在的数组。
- cancellationToken
- CancellationToken
将指派给新的延续任务的取消标记。
- continuationOptions
- TaskContinuationOptions
控制所创建的延续任务的行为的枚举值之一。 NotOn*
和 OnlyOn*
值均无效。
- scheduler
- TaskScheduler
用于计划所创建的延续 TaskScheduler 的 Task<TResult>。
返回
新的延续 Task<TResult>。
例外
continuationOptions
参数指定的 TaskContinuationOptions 值无效。
已释放 tasks
数组中的一个元素。
- 或 -
创建了
cancellationToken
的 CancellationTokenSource 已经被释放。
注解
完成后,任务处于以下状态之一: RanToCompletion、 Faulted或 Canceled 状态。
另请参阅
适用于
ContinueWhenAny<TAntecedentResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>,TResult>, TaskContinuationOptions)
创建一个延续任务,它将在提供的组中的任何任务完成后马上开始。
public:
generic <typename TAntecedentResult>
System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task<TAntecedentResult> ^> ^ tasks, Func<System::Threading::Tasks::Task<TAntecedentResult> ^, TResult> ^ continuationFunction, System::Threading::Tasks::TaskContinuationOptions continuationOptions);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny<TAntecedentResult> (System.Threading.Tasks.Task<TAntecedentResult>[] tasks, Func<System.Threading.Tasks.Task<TAntecedentResult>,TResult> continuationFunction, System.Threading.Tasks.TaskContinuationOptions continuationOptions);
member this.ContinueWhenAny : System.Threading.Tasks.Task<'AntecedentResult>[] * Func<System.Threading.Tasks.Task<'AntecedentResult>, 'Result> * System.Threading.Tasks.TaskContinuationOptions -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny(Of TAntecedentResult) (tasks As Task(Of TAntecedentResult)(), continuationFunction As Func(Of Task(Of TAntecedentResult), TResult), continuationOptions As TaskContinuationOptions) As Task(Of TResult)
类型参数
- TAntecedentResult
以前的 tasks
结果的类型。
参数
- tasks
- Task<TAntecedentResult>[]
在一个任务完成时继续执行的任务所在的数组。
- continuationOptions
- TaskContinuationOptions
控制所创建的延续任务的行为的枚举值之一。 NotOn*
和 OnlyOn*
值均无效。
返回
新的延续 Task<TResult>。
例外
已释放 tasks
数组中的一个元素。
continuationOptions
参数指定的枚举值无效。
注解
完成后,任务处于以下状态之一: RanToCompletion、 Faulted或 Canceled 状态。
另请参阅
适用于
ContinueWhenAny<TAntecedentResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>,TResult>)
创建一个延续任务,它将在提供的组中的任何任务完成后马上开始。
public:
generic <typename TAntecedentResult>
System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task<TAntecedentResult> ^> ^ tasks, Func<System::Threading::Tasks::Task<TAntecedentResult> ^, TResult> ^ continuationFunction);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny<TAntecedentResult> (System.Threading.Tasks.Task<TAntecedentResult>[] tasks, Func<System.Threading.Tasks.Task<TAntecedentResult>,TResult> continuationFunction);
member this.ContinueWhenAny : System.Threading.Tasks.Task<'AntecedentResult>[] * Func<System.Threading.Tasks.Task<'AntecedentResult>, 'Result> -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny(Of TAntecedentResult) (tasks As Task(Of TAntecedentResult)(), continuationFunction As Func(Of Task(Of TAntecedentResult), TResult)) As Task(Of TResult)
类型参数
- TAntecedentResult
以前的 tasks
结果的类型。
参数
- tasks
- Task<TAntecedentResult>[]
在一个任务完成时继续执行的任务所在的数组。
返回
新的延续 Task<TResult>。
例外
已释放 tasks
数组中的一个元素。
注解
完成后,任务处于以下状态之一: RanToCompletion、 Faulted或 Canceled 状态。
另请参阅
适用于
ContinueWhenAny<TAntecedentResult>(Task<TAntecedentResult>[], Func<Task<TAntecedentResult>,TResult>, CancellationToken)
创建一个延续任务,它将在提供的组中的任何任务完成后马上开始。
public:
generic <typename TAntecedentResult>
System::Threading::Tasks::Task<TResult> ^ ContinueWhenAny(cli::array <System::Threading::Tasks::Task<TAntecedentResult> ^> ^ tasks, Func<System::Threading::Tasks::Task<TAntecedentResult> ^, TResult> ^ continuationFunction, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task<TResult> ContinueWhenAny<TAntecedentResult> (System.Threading.Tasks.Task<TAntecedentResult>[] tasks, Func<System.Threading.Tasks.Task<TAntecedentResult>,TResult> continuationFunction, System.Threading.CancellationToken cancellationToken);
member this.ContinueWhenAny : System.Threading.Tasks.Task<'AntecedentResult>[] * Func<System.Threading.Tasks.Task<'AntecedentResult>, 'Result> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
Public Function ContinueWhenAny(Of TAntecedentResult) (tasks As Task(Of TAntecedentResult)(), continuationFunction As Func(Of Task(Of TAntecedentResult), TResult), cancellationToken As CancellationToken) As Task(Of TResult)
类型参数
- TAntecedentResult
以前的 tasks
结果的类型。
参数
- tasks
- Task<TAntecedentResult>[]
在一个任务完成时继续执行的任务所在的数组。
- cancellationToken
- CancellationToken
将指派给新的延续任务的取消标记。
返回
新的延续任务。
例外
已释放 tasks
数组中的一个元素。
- 或 -
创建了
cancellationToken
的 CancellationTokenSource 已经被释放。
注解
完成后,任务处于以下状态之一: RanToCompletion、 Faulted或 Canceled 状态。