TaskFactory.StartNew Method (Action)
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Creates and starts a Task.
Namespace: System.Threading.Tasks
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Function StartNew ( _
action As Action _
) As Task
public Task StartNew(
Action action
)
Parameters
- action
Type: System.Action
The action delegate to execute asynchronously.
Return Value
Type: System.Threading.Tasks.Task
The started Task.
Exceptions
Exception | Condition |
---|---|
ArgumentNullException | The exception that is thrown when the action argument is null. |
Remarks
Calling StartNew is functionally equivalent to creating a Task using one of its constructors and then calling Start to schedule it for execution. However, unless creation and scheduling must be separated, StartNew is the recommended approach for both simplicity and performance.
Examples
This example demonstrates some common ways to use StartNew to commence asynchronous work.
// C#
// Using the default TaskFactory
Task.Factory.StartNew(() =>
{
// Do Work.
});
// Using a custom TaskFactory
TaskFactory myFactory = new TaskFactory(
// Which TaskScheduler? A null indicates that TaskScheduler.Current should be used.
null,
// Which TaskCreationOptions?
TaskCreationOptions.DetachedFromParent | TaskCreationOptions.PreferFairness,
// Which TaskContinuationOptions?
TaskContinuationOptions.DetachedFromParent | TaskContinuationOptions.PreferFairness);
...
myFactory.StartNew(delegate()
{
// Do Work.
});
' Visual Basic
' Using the default TaskFactory
Task.Factory.StartNew(Sub()
' Do Work.
End Sub)
' Using a custom TaskFactory
Dim myFactory As New TaskFactory(
' Which TaskScheduler? A null indicates that TaskScheduler.Current should be used.
null,
' Which TaskCreationOptions?
TaskCreationOptions.DetachedFromParent Or TaskCreationOptions.PreferFairness,
' Which TaskContinuationOptions?
TaskContinuationOptions.DetachedFromParent Or TaskContinuationOptions.PreferFairness)
...
myFactory.StartNew(Sub()
// Do Work.
End Sub)
Version Information
Silverlight
Supported in: 5
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.
See Also