CoreTaskExtensionsThenTSource, TResult Method (TaskTSource, FuncTaskTSource, TaskTResult) |
Execute a continuation task when a task completes successfully. The continuation
task is synchronously created by a continuation function, and then unwrapped to
form the result of this method.
Namespace: net.openstack.CoreAssembly: openstacknet (in openstacknet.dll) Version: 1.7.7+Branch.master.Sha.25d803f397c8693c2c13777ef6675f796f520f2c
Syntax public static Task<TResult> Then<TSource, TResult>(
this Task<TSource> task,
Func<Task<TSource>, Task<TResult>> continuationFunction
)
<ExtensionAttribute>
Public Shared Function Then(Of TSource, TResult) (
task As Task(Of TSource),
continuationFunction As Func(Of Task(Of TSource), Task(Of TResult))
) As Task(Of TResult)
public:
[ExtensionAttribute]
generic<typename TSource, typename TResult>
static Task<TResult>^ Then(
Task<TSource>^ task,
Func<Task<TSource>^, Task<TResult>^>^ continuationFunction
)
[<ExtensionAttribute>]
static member Then :
task : Task<'TSource> *
continuationFunction : Func<Task<'TSource>, Task<'TResult>> -> Task<'TResult>
Parameters
- task
- Type: System.Threading.TasksTaskTSource
The antecedent task. - continuationFunction
- Type: SystemFuncTaskTSource, TaskTResult
The continuation function to execute when task completes successfully. The continuation function returns a TaskTResult which provides the final result of the continuation.
Type Parameters
- TSource
- The type of the result produced by the antecedent TaskTResult.
- TResult
- The type of the result produced by the continuation TaskTResult.
Return Value
Type:
TaskTResultA
Task representing the asynchronous operation. When the task completes successfully,
the
Result property will contain the result provided by the
Result property of the task returned from
continuationFunction.
Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type
TaskTSource. When you use instance method syntax to call this method, omit the first parameter. For more information, see
Extension Methods (Visual Basic) or
Extension Methods (C# Programming Guide).
Exceptions Remarks If the antecedent task is cancelled or faulted, the status
of the antecedent is directly applied to the task returned by this method; it is
not wrapped in an additional AggregateException.
Notes to Callers |
---|
Since the continuationFunction is executed synchronously, this
method should only be used for lightweight continuation functions. This restriction
applies only to continuationFunction itself, not to the
Task returned by it.
|
Version Information .NET Framework
Supported in: 4.5
openstack.net
Supported in: 1.6, 1.5, 1.4, 1.3.6
See Also