TaskScheduler.TryExecuteTask(Task) Method


Attempts to execute the provided Task on this scheduler.

 bool TryExecuteTask(System::Threading::Tasks::Task ^ task);
protected bool TryExecuteTask (System.Threading.Tasks.Task task);
protected bool TryExecuteTask (System.Threading.Tasks.Task task);
member this.TryExecuteTask : System.Threading.Tasks.Task -> bool
member this.TryExecuteTask : System.Threading.Tasks.Task -> bool
Protected Function TryExecuteTask (task As Task) As Boolean



A Task object to be executed.


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.



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.

Applies to

See also