TaskFactory<TResult>.StartNew Method (Func<Object, TResult>, Object, CancellationToken)
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Creates and starts a task.
Assembly: mscorlib (in mscorlib.dll)
public Task<TResult> StartNew(
Func<Object, TResult> function,
Object state,
CancellationToken cancellationToken
)
Parameters
- function
- Type: System.Func<Object, TResult>
A function delegate that returns the future result to be available through the task.
- state
- Type: System.Object
An object that contains data to be used by the function delegate.
- cancellationToken
- Type: System.Threading.CancellationToken
The cancellation token that will be assigned to the new task.
| Exception | Condition |
|---|---|
| ObjectDisposedException | The cancellation token source that createdcancellationToken has already been disposed. |
| ArgumentNullException | The function argument is null. |
Calling StartNew is functionally equivalent to creating a task by using one of the Task<TResult> constructors and then calling the Start method to schedule it for execution.
However, unless creation and scheduling must be separated, StartNew is the recommended approach for both simplicity and performance.