This documentation is archived and is not being maintained.

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

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

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

public Task<TResult> FromAsync<TArg1, TResult>(
	Func<TArg1, AsyncCallback, Object, IAsyncResult> beginMethod,
	Func<IAsyncResult, TResult> endMethod,
	TArg1 arg1,
	Object state

Type Parameters


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


The type of the result available through the created task.


Type: System.Func<TArg1, AsyncCallback, Object, IAsyncResult>
The delegate that begins the asynchronous operation.
Type: System.Func<IAsyncResult, TResult>
The delegate that ends the asynchronous operation.
Type: TArg1
The first argument passed to the beginMethod delegate.
Type: System.Object
An object containing data to be used by the beginMethod delegate.

Return Value

Type: System.Threading.Tasks.Task<TResult>
The created task that represents the asynchronous operation.


The beginMethod argument is null.


The endMethod argument is null.

This method throws any exceptions thrown by the beginMethod.

.NET Framework

Supported in: 4

.NET Framework Client Profile

Supported in: 4

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.