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
- Исходный код:
- 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 (Ничего в Visual Basic).
Маркер отмены был отменен. Это исключение хранится в возвращаемой задаче.
Применяется к
SendAsync<TInput>(ITargetBlock<TInput>, TInput)
- Исходный код:
- DataflowBlock.cs
- Исходный код:
- DataflowBlock.cs
- Исходный код:
- DataflowBlock.cs
- Исходный код:
- 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.