C# Класс System.Threading.Tasks.Schedulers.ConcurrentExclusiveInterleave

Показать файл Открыть проект Примеры использования класса

Private Properties

Свойство Тип Описание
ConcurrentExclusiveInterleaveProcessor void
ExecuteConcurrentTask void
GetConcurrentTasksUntilExclusiveExists IEnumerable
GetExclusiveTasks IEnumerable
NotifyOfNewWork void

Открытые методы

Метод Описание
ConcurrentExclusiveInterleave ( ) : System.Collections.Generic

Initialies the ConcurrentExclusiveInterleave.

ConcurrentExclusiveInterleave ( TaskScheduler targetScheduler ) : System.Collections.Generic

Initialies the ConcurrentExclusiveInterleave.

ConcurrentExclusiveInterleave ( TaskScheduler targetScheduler, bool exclusiveProcessingIncludesChildren ) : System.Collections.Generic

Initialies the ConcurrentExclusiveInterleave.

ConcurrentExclusiveInterleave ( bool exclusiveProcessingIncludesChildren ) : System.Collections.Generic

Initialies the ConcurrentExclusiveInterleave.

Приватные методы

Метод Описание
ConcurrentExclusiveInterleaveProcessor ( ) : void

The body of the async processor to be run in a Task. Only one should be running at a time.

This has been separated out into its own method to improve the Parallel Tasks window experience.

ExecuteConcurrentTask ( Task task ) : void

Runs a concurrent task.

This has been separated out into its own method to improve the Parallel Tasks window experience.

GetConcurrentTasksUntilExclusiveExists ( ) : IEnumerable

Gets an enumerable that yields waiting concurrent tasks one at a time until either there are no more concurrent tasks or there are any exclusive tasks.

GetExclusiveTasks ( ) : IEnumerable

Gets an enumerable that yields all of the exclusive tasks one at a time.

NotifyOfNewWork ( ) : void

Notifies the interleave that new work has arrived to be processed.

Must only be called while holding the lock.

Описание методов

ConcurrentExclusiveInterleave() публичный Метод

Initialies the ConcurrentExclusiveInterleave.
public ConcurrentExclusiveInterleave ( ) : System.Collections.Generic
Результат System.Collections.Generic

ConcurrentExclusiveInterleave() публичный Метод

Initialies the ConcurrentExclusiveInterleave.
public ConcurrentExclusiveInterleave ( TaskScheduler targetScheduler ) : System.Collections.Generic
targetScheduler TaskScheduler The target scheduler on which this interleave should execute.
Результат System.Collections.Generic

ConcurrentExclusiveInterleave() публичный Метод

Initialies the ConcurrentExclusiveInterleave.
public ConcurrentExclusiveInterleave ( TaskScheduler targetScheduler, bool exclusiveProcessingIncludesChildren ) : System.Collections.Generic
targetScheduler TaskScheduler The target scheduler on which this interleave should execute.
exclusiveProcessingIncludesChildren bool Whether the exclusive processing of a task should include all of its children as well.
Результат System.Collections.Generic

ConcurrentExclusiveInterleave() публичный Метод

Initialies the ConcurrentExclusiveInterleave.
public ConcurrentExclusiveInterleave ( bool exclusiveProcessingIncludesChildren ) : System.Collections.Generic
exclusiveProcessingIncludesChildren bool Whether the exclusive processing of a task should include all of its children as well.
Результат System.Collections.Generic