C# Class System.Threading.Tasks.Schedulers.ConcurrentExclusiveInterleave.ConcurrentExclusiveTaskScheduler

A scheduler shim used to queue tasks to the interleave and execute those tasks on request of the interleave.
Inheritance: TaskScheduler
Datei anzeigen Open project: bingyang001/disruptor-net-3.3.0-alpha

Private Properties

Property Type Description
ConcurrentExclusiveTaskScheduler System.Collections.Generic
ExecuteTask void

Protected Methods

Method Description
GetScheduledTasks ( ) : IEnumerable

Gets for debugging purposes the tasks scheduled to this scheduler.

QueueTask ( Task task ) : void

Queues a task to the scheduler.

TryExecuteTaskInline ( Task task, bool taskWasPreviouslyQueued ) : bool

Tries to execute the task synchronously on this scheduler.

Private Methods

Method Description
ConcurrentExclusiveTaskScheduler ( ConcurrentExclusiveInterleave interleave, Queue tasks, int maximumConcurrencyLevel ) : System.Collections.Generic

Initializes the scheduler.

ExecuteTask ( Task task ) : void

Executes a task on this scheduler.

Method Details

GetScheduledTasks() protected method

Gets for debugging purposes the tasks scheduled to this scheduler.
protected GetScheduledTasks ( ) : IEnumerable
return IEnumerable

QueueTask() protected method

Queues a task to the scheduler.
protected QueueTask ( Task task ) : void
task Task The task to be queued.
return void

TryExecuteTaskInline() protected method

Tries to execute the task synchronously on this scheduler.
protected TryExecuteTaskInline ( Task task, bool taskWasPreviouslyQueued ) : bool
task Task The task to execute.
taskWasPreviouslyQueued bool Whether the task was previously queued to the scheduler.
return bool