This documentation is archived and is not being maintained.

TaskScheduler.TryExecuteTask Method

Attempts to execute the provided Task on this scheduler.

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

protected bool TryExecuteTask(
	Task task
)

Parameters

task
Type: System.Threading.Tasks.Task
A Task object to be executed.

Return Value

Type: System.Boolean
A Boolean that is true if task was successfully executed, false if it was not. A common reason for execution failure is that the task had previously been executed or is in the process of being executed by another thread.

ExceptionCondition
InvalidOperationException

The task is not associated with this scheduler.

Scheduler implementations are provided with Task instances to be executed through either the QueueTask method or the TryExecuteTaskInline method. When the scheduler deems it appropriate to run the provided task, TryExecuteTask should be used to do so. TryExecuteTask handles all aspects of executing a task, including action invocation, exception handling, state management, and lifecycle control.

TryExecuteTask must only be used for tasks provided to this scheduler by the .NET Framework infrastructure. It should not be used to execute arbitrary tasks obtained through custom mechanisms.

.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.
Show: