BroadcastBlock<T>.ISourceBlock<T>.ReserveMessage Method
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Called by a linked ITargetBlock<TInput> to reserve a previously offered DataflowMessageHeader by this ISourceBlock<TOutput>.
virtual bool System.Threading.Tasks.Dataflow.ISourceBlock<T>.ReserveMessage(System::Threading::Tasks::Dataflow::DataflowMessageHeader messageHeader, System::Threading::Tasks::Dataflow::ITargetBlock<T> ^ target) = System::Threading::Tasks::Dataflow::ISourceBlock<T>::ReserveMessage;
bool ISourceBlock<T>.ReserveMessage(System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, System.Threading.Tasks.Dataflow.ITargetBlock<T> target);
abstract member System.Threading.Tasks.Dataflow.ISourceBlock<T>.ReserveMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * System.Threading.Tasks.Dataflow.ITargetBlock<'T> -> bool
override this.System.Threading.Tasks.Dataflow.ISourceBlock<T>.ReserveMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * System.Threading.Tasks.Dataflow.ITargetBlock<'T> -> bool
Function ReserveMessage (messageHeader As DataflowMessageHeader, target As ITargetBlock(Of T)) As Boolean Implements ISourceBlock(Of T).ReserveMessage
- messageHeader
- DataflowMessageHeader
The DataflowMessageHeader of the message being reserved.
- target
- ITargetBlock<T>
The ITargetBlock<TInput> reserving the message.
true
if the message was successfully reserved; otherwise, false
.
The messageHeader
is not valid.
The target
is null
.
Only ITargetBlock<TInput> instances linked to this ISourceBlock<TOutput> instance may use ReserveMessage, and it must only be used to reserve DataflowMessageHeader instances previously offered by this source to the target.
If true
is returned, the ITargetBlock<TInput> must subsequently call either ConsumeMessage or ReleaseReservation for this message. Failure to do so may result in the source being unable to propagate any further messages to this or other targets.
ReserveMessage must not be called while the target is holding any internal locks. Doing so will violate the lock hierarchy necessary to avoid deadlocks in a dataflow network.
منتج | الإصدارات |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8 (package-provided), 8, 9 (package-provided), 9, 10 (package-provided), 10 |
.NET Standard | 2.0 (package-provided), 2.1 (package-provided) |
UWP | 10.0 |
ملاحظات .NET
.NET هو مشروع مصدر مفتوح. حدد رابطًا لتقديم الملاحظات: