TaskFactory<TResult>.FromAsync<TArg1, TArg2, TArg3> Method (Func<TArg1, TArg2, TArg3, AsyncCallback, Object, IAsyncResult>, Func<IAsyncResult, TResult>, TArg1, TArg2, TArg3, Object, TaskCreationOptions)

 

Creates a task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

Namespace:   System.Threading.Tasks
Assembly:  mscorlib (in mscorlib.dll)

public Task<TResult> FromAsync<TArg1, TArg2, TArg3>(
	Func<TArg1, TArg2, TArg3, AsyncCallback, object, IAsyncResult> beginMethod,
	Func<IAsyncResult, TResult> endMethod,
	TArg1 arg1,
	TArg2 arg2,
	TArg3 arg3,
	object state,
	TaskCreationOptions creationOptions
)

Parameters

beginMethod
Type: System.Func<TArg1, TArg2, TArg3, AsyncCallback, Object, IAsyncResult>

The delegate that begins the asynchronous operation.

endMethod
Type: System.Func<IAsyncResult, TResult>

The delegate that ends the asynchronous operation.

arg1
Type: TArg1

The first argument passed to the beginMethod delegate.

arg2
Type: TArg2

The second argument passed to the beginMethod delegate.

arg3
Type: TArg3

The third argument passed to the beginMethod delegate.

state
Type: System.Object

An object containing data to be used by the beginMethod delegate.

creationOptions
Type: System.Threading.Tasks.TaskCreationOptions

An object that controls the behavior of the created task.

Return Value

Type: System.Threading.Tasks.Task<TResult>

The created task that represents the asynchronous operation.

Type Parameters

TArg1

The type of the second argument passed to beginMethod delegate.

TArg2

The type of the third argument passed to beginMethod delegate.

TArg3

The type of the first argument passed to the beginMethod delegate.

Exception Condition
ArgumentNullException

The beginMethod argument is null.

-or-

The endMethod argument is null.

ArgumentOutOfRangeException

The creationOptions parameter specifies an invalid value.

This method throws any exceptions thrown by the beginMethod. Exceptions for endmethod are thrown when waiting on the returned task.

Universal Windows Platform
Available since 8
.NET Framework
Available since 4.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 5.0
Windows Phone Silverlight
Available since 8.0
Windows Phone
Available since 8.1
Return to top
Show: