DataflowBlock.SendAsync Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
SendAsync<TInput>(ITargetBlock<TInput>, TInput, CancellationToken) |
Асинхронно предлагает сообщение в целевому блоку сообщений, позволяет задержки. |
SendAsync<TInput>(ITargetBlock<TInput>, TInput) |
Асинхронно предлагает сообщение в целевому блоку сообщений, позволяет задержки. |
SendAsync<TInput>(ITargetBlock<TInput>, TInput, CancellationToken)
- Исходный код:
- DataflowBlock.cs
- Исходный код:
- DataflowBlock.cs
- Исходный код:
- DataflowBlock.cs
- Исходный код:
- DataflowBlock.cs
Асинхронно предлагает сообщение в целевому блоку сообщений, позволяет задержки.
public:
generic <typename TInput>
[System::Runtime::CompilerServices::Extension]
static System::Threading::Tasks::Task<bool> ^ SendAsync(System::Threading::Tasks::Dataflow::ITargetBlock<TInput> ^ target, TInput item, System::Threading::CancellationToken cancellationToken);
public static System.Threading.Tasks.Task<bool> SendAsync<TInput> (this System.Threading.Tasks.Dataflow.ITargetBlock<TInput> target, TInput item, System.Threading.CancellationToken cancellationToken);
static member SendAsync : System.Threading.Tasks.Dataflow.ITargetBlock<'Input> * 'Input * System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
<Extension()>
Public Function SendAsync(Of TInput) (target As ITargetBlock(Of TInput), item As TInput, cancellationToken As CancellationToken) As Task(Of Boolean)
Параметры типа
- TInput
Указывает тип данных, отправляемых целевому объекту.
Параметры
- target
- ITargetBlock<TInput>
Целевой объект, на который требуется отправить данные.
- item
- TInput
Элемент, предлагаемый целевому объекту.
- cancellationToken
- CancellationToken
Токен отмены, с которым требуется запросить отмену операции отправки.
Возвращаемое значение
Объект Task<TResult>, который представляет асинхронную отправку. Если целевой объект принимает и использует предлагаемый элемент во время вызова SendAsync, по возвращении из вызова результат Task<TResult> будет завершен, а его Result
свойство вернет значение true. Если целевой объект отклоняет предлагаемый элемент во время вызова, по возвращении из вызова результат Task<TResult> будет завершен, а его Result
свойство вернет значение false. Если целевой объект отложит предлагаемый элемент, элемент будет помещен в буфер до тех пор, пока целевой объект не будет использовать или отпустит его, после чего задача будет завершена с указанием того, Result
было ли использовано сообщение. Если целевой объект не пытается употребить или высвободить сообщение, возвращаемая задача никогда не будет завершена.
Если отмена запрашивается до того, как целевой объект успешно потребил отправленные данные, возвращенная задача будет завершена в отмененном состоянии, и данные больше не будут доступны целевому объекту.
Исключения
Имеет target
значение NULL (Nothing в Visual Basic).
Маркер отмены был отменен. Это исключение сохраняется в возвращаемой задаче.
Применяется к
SendAsync<TInput>(ITargetBlock<TInput>, TInput)
- Исходный код:
- DataflowBlock.cs
- Исходный код:
- DataflowBlock.cs
- Исходный код:
- DataflowBlock.cs
- Исходный код:
- DataflowBlock.cs
Асинхронно предлагает сообщение в целевому блоку сообщений, позволяет задержки.
public:
generic <typename TInput>
[System::Runtime::CompilerServices::Extension]
static System::Threading::Tasks::Task<bool> ^ SendAsync(System::Threading::Tasks::Dataflow::ITargetBlock<TInput> ^ target, TInput item);
public static System.Threading.Tasks.Task<bool> SendAsync<TInput> (this System.Threading.Tasks.Dataflow.ITargetBlock<TInput> target, TInput item);
static member SendAsync : System.Threading.Tasks.Dataflow.ITargetBlock<'Input> * 'Input -> System.Threading.Tasks.Task<bool>
<Extension()>
Public Function SendAsync(Of TInput) (target As ITargetBlock(Of TInput), item As TInput) As Task(Of Boolean)
Параметры типа
- TInput
Указывает тип данных, отправляемых целевому объекту.
Параметры
- target
- ITargetBlock<TInput>
Целевой объект, на который требуется отправить данные.
- item
- TInput
Элемент, предлагаемый целевому объекту.
Возвращаемое значение
Объект Task<TResult>, который представляет асинхронную отправку. Если целевой объект принимает и использует предлагаемый элемент во время вызова метода SendAsync<TInput>(ITargetBlock<TInput>, TInput), то при возврате из вызова результирующий объект Task<TResult> будет завершен и его свойство Result возвратит значение true
. Если целевой объект отклоняет предлагаемый элемент во время вызова, то при возврате из вызова результирующий объект Task<TResult> будет завершен и его свойство Result возвратит значение false
. Если целевой объект откладывает предлагаемый элемент, элемент буферизуется до тех пор, пока целевой объект не потребит или не высвободит его; тогда задача завершится, а ее свойство Result будет показывать, было ли потреблено сообщение. Если целевой объект не пытается употребить или высвободить сообщение, возвращаемая задача никогда не будет завершена.
Исключения
target
является null
.