Aracılığıyla paylaş


ActionBlock<TInput>.ITargetBlock<TInput>.OfferMessage Yöntem

Tanım

Veri akışı bloğuna bir ileti sunar ve iletiye iletiyi kullanma veya erteleme fırsatı verir.

 virtual System::Threading::Tasks::Dataflow::DataflowMessageStatus System.Threading.Tasks.Dataflow.ITargetBlock<TInput>.OfferMessage(System::Threading::Tasks::Dataflow::DataflowMessageHeader messageHeader, TInput messageValue, System::Threading::Tasks::Dataflow::ISourceBlock<TInput> ^ source, bool consumeToAccept) = System::Threading::Tasks::Dataflow::ITargetBlock<TInput>::OfferMessage;
System.Threading.Tasks.Dataflow.DataflowMessageStatus ITargetBlock<TInput>.OfferMessage (System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, TInput messageValue, System.Threading.Tasks.Dataflow.ISourceBlock<TInput> source, bool consumeToAccept);
abstract member System.Threading.Tasks.Dataflow.ITargetBlock<TInput>.OfferMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * 'Input * System.Threading.Tasks.Dataflow.ISourceBlock<'Input> * bool -> System.Threading.Tasks.Dataflow.DataflowMessageStatus
override this.System.Threading.Tasks.Dataflow.ITargetBlock<TInput>.OfferMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * 'Input * System.Threading.Tasks.Dataflow.ISourceBlock<'Input> * bool -> System.Threading.Tasks.Dataflow.DataflowMessageStatus
Function OfferMessage (messageHeader As DataflowMessageHeader, messageValue As TInput, source As ISourceBlock(Of TInput), consumeToAccept As Boolean) As DataflowMessageStatus Implements ITargetBlock(Of TInput).OfferMessage

Parametreler

messageHeader
DataflowMessageHeader

Sunulan iletinin üst bilgisi.

messageValue
TInput

Sunulan iletinin değeri.

source
ISourceBlock<TInput>

İletiyi sunan veri akışı bloğu. Bu olabilir null.

consumeToAccept
Boolean

truehedefine, döndürülmeden önce Acceptedçağrısı sırasında zaman uyumlu bir şekilde çağrılmasınıOfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean)ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean), aksi takdirde falseiletisini tüketmesini bildirmek için.

Döndürülenler

Sunulan iletinin durumu. İleti hedef tarafından kabul edildiyse döndürülür Accepted ve kaynak artık sunulan iletiyi kullanmamalıdır çünkü artık hedefe aittir. İleti hedef tarafından ertelendiyse, Postponed hedefin daha sonra iletiyi tüketmeyi veya ayırmayı deneyebileceğini belirten bir bildirim olarak döndürülür; bu arada, kaynak iletinin sahibi olmaya devam eder ve diğer bloklara sunabilir.

Hedef başka bir şekilde iletiyi ertelemiş olsa da kaynak döndürülürsenullDeclined.

Hedef iletiyi kabul etmeye çalıştıysa ancak kaynağın iletiyi başka bir hedefe teslim etme veya yalnızca atma NotAvailable nedeniyle bu iletiyi kaçırması durumunda döndürülür.

Hedef iletiyi kabul etmemeyi seçtiyse döndürülür Declined . Hedef iletiyi kabul etmemeyi seçerse ve bu kaynaktan başka bir iletiyi asla kabul etmezse, DecliningPermanently döndürülür.

Uygulamalar

Özel durumlar

messageHeader geçerli değil.

-veya- consumeToAccept yalnızca null sourceolmayan bir ile sağlanıyorsa olabilirtrue.

Şunlara uygulanır