ISourceBlock<TOutput>.ReserveMessage Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Daha önce bu tarafından sunulan bir ayırmak için bağlı ITargetBlock<TInput> tarafından çağrılır DataflowMessageHeaderISourceBlock<TOutput>.
public:
bool ReserveMessage(System::Threading::Tasks::Dataflow::DataflowMessageHeader messageHeader, System::Threading::Tasks::Dataflow::ITargetBlock<TOutput> ^ target);
public bool ReserveMessage (System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, System.Threading.Tasks.Dataflow.ITargetBlock<out TOutput> target);
abstract member ReserveMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * System.Threading.Tasks.Dataflow.ITargetBlock<'Output> -> bool
Public Function ReserveMessage (messageHeader As DataflowMessageHeader, target As ITargetBlock(Of Out TOutput)) As Boolean
Parametreler
- messageHeader
- DataflowMessageHeader
Ayrılmış DataflowMessageHeader iletinin.
- target
- ITargetBlock<TOutput>
İletiyi ITargetBlock<TInput> ayırma.
Döndürülenler
true
ileti başarıyla ayrılmışsa; aksi takdirde , false
.
Özel durumlar
messageHeader
geçerli değil.
şeklindedir target
null
.
Açıklamalar
Yalnızca ITargetBlock<TInput> bu örneğe bağlı örnekler kullanabilir ReserveMessageve yalnızca daha önce bu ISourceBlock<TOutput> kaynak tarafından hedefte sunulan örnekleri ayırmak DataflowMessageHeader için kullanılmalıdır.
döndürülürsetrue
, ITargetBlock<TInput> daha sonra bu ileti için veya ReleaseReservation çağrısı ConsumeMessage yapılmalıdır. Bunun yapılmaması, kaynağın bu veya diğer hedeflere başka ileti yayamamasına neden olabilir.
ReserveMessage hedef herhangi bir iç kilit tutarken çağrılmamalıdır. Bunun yapılması, veri akışı ağında kilitlenmeleri önlemek için gereken kilit hiyerarşisini ihlal eder.