System.Threading.Tasks.TaskScheduler.TryExecuteTask Method

Attempts to execute the provided System.Threading.Tasks.Task on this scheduler.

Syntax

protected bool TryExecuteTask (Task task)

Parameters

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

Returns

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.

Remarks

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

TaskScheduler.TryExecuteTask(Task) 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.

Requirements

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