IPropagatorBlock<TInput,TOutput> Интерфейс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет блок потока данных, который является и целевым объектом для данных, и источником данных.
generic <typename TInput, typename TOutput>
public interface class IPropagatorBlock : System::Threading::Tasks::Dataflow::ISourceBlock<TOutput>, System::Threading::Tasks::Dataflow::ITargetBlock<TInput>
public interface IPropagatorBlock<in TInput,out TOutput> : System.Threading.Tasks.Dataflow.ISourceBlock<out TOutput>, System.Threading.Tasks.Dataflow.ITargetBlock<in TInput>
type IPropagatorBlock<'Input, 'Output> = interface
interface ITargetBlock<'Input>
interface IDataflowBlock
interface ISourceBlock<'Output>
type IPropagatorBlock<'Input, 'Output> = interface
interface IDataflowBlock
interface ISourceBlock<'Output>
interface ITargetBlock<'Input>
Public Interface IPropagatorBlock(Of In TInput, Out TOutput)
Implements ISourceBlock(Of Out TOutput), ITargetBlock(Of In TInput)
Параметры типа
- TInput
Указывает тип данных, принимаемых IPropagatorBlock<TInput,TOutput>.
Это контравариантный параметр типа. Это означает, что вы можете использовать любой из указанных типов или любой тип, являющийся менее производным. Дополнительные сведения о ковариантности и контрвариантности см. в статье Ковариантность и контрвариантность в универсальных шаблонах.- TOutput
Указывает тип данных, поставляемых IPropagatorBlock<TInput,TOutput>.
Это ковариантный параметр типа. Это означает, что вы можете использовать любой из указанных типов или любой тип, являющийся более производным. Дополнительные сведения о ковариантности и контрвариантности см. в статье Ковариантность и контрвариантность в универсальных шаблонах.- Производный
- Реализации
Комментарии
Примечание
Библиотека потоков данных TPL (пространство имен System.Threading.Tasks.Dataflow) не поставляется с .NET. Чтобы установить пространство имен System.Threading.Tasks.Dataflow в Visual Studio, откройте проект, выберите Управление пакетами NuGet в меню Проект и выполните поиск пакета System.Threading.Tasks.Dataflow
в Интернете. Вы также можете установить его, выполнив в .NET Core CLI команду dotnet add package System.Threading.Tasks.Dataflow
.
Свойства
Completion |
Получает объект Task, представляющий асинхронную операцию и завершение блока потока данных. (Унаследовано от IDataflowBlock) |
Методы
Методы расширения
AsObservable<TOutput>(ISourceBlock<TOutput>) |
Создает новую абстракцию IObservable<T> для ISourceBlock<TOutput>. |
AsObserver<TInput>(ITargetBlock<TInput>) |
Создает новую абстракцию IObserver<T> для ITargetBlock<TInput>. |
LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>) |
Связывает объект ISourceBlock<TOutput> с указанным ITargetBlock<TInput>объектом . |
LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, Predicate<TOutput>) |
Связывает с ISourceBlock<TOutput> указанным ITargetBlock<TInput> с помощью указанного фильтра. |
LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, DataflowLinkOptions, Predicate<TOutput>) |
Связывает с ISourceBlock<TOutput> указанным ITargetBlock<TInput> с помощью указанного фильтра. |
OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>) |
Предоставляет Task<TResult>, которое асинхронным образом выполняет мониторинг источника доступного вывода. |
OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Предоставляет Task<TResult>, которое асинхронным образом выполняет мониторинг источника доступного вывода. |
Post<TInput>(ITargetBlock<TInput>, TInput) |
Отправляет элемент в объект ITargetBlock<TInput>. |
Receive<TOutput>(ISourceBlock<TOutput>) |
Синхронно получает значение от указанного источника. |
Receive<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Синхронно получает значение из указанного источника и предоставляет токен для отмены операции. |
Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
Синхронно получает значение из указанного источника, отслеживание необязательно точкой времени ожидания. |
Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
Синхронно получает значение из указанного источника, обеспечивая токен для отмены операции за необязательным и интервал времени ожидания. |
ReceiveAsync<TOutput>(ISourceBlock<TOutput>) |
Асинхронно получает значение от указанного источника. |
ReceiveAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Асинхронно получает значение из указанного источника и предоставляет токен для отмены операции. |
ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
Асинхронно получает значение из указанного источника, отслеживание необязательно точкой времени ожидания. |
ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
Асинхронно получает значение из указанного источника, обеспечивая токен для отмены операции за необязательным и интервал времени ожидания. |
SendAsync<TInput>(ITargetBlock<TInput>, TInput) |
Асинхронно предлагает сообщение в целевому блоку сообщений, позволяет задержки. |
SendAsync<TInput>(ITargetBlock<TInput>, TInput, CancellationToken) |
Асинхронно предлагает сообщение в целевому блоку сообщений, позволяет задержки. |