ITargetBlock<TInput>.OfferMessage Yöntem

Tanım

hedefine ITargetBlock<TInput>iletiyi kullanma veya erteleme fırsatı veren bir ileti sunar.

public System.Threading.Tasks.Dataflow.DataflowMessageStatus OfferMessage(System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, TInput messageValue, System.Threading.Tasks.Dataflow.ISourceBlock<in TInput> source, bool consumeToAccept);
public System.Threading.Tasks.Dataflow.DataflowMessageStatus OfferMessage(System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, TInput messageValue, System.Threading.Tasks.Dataflow.ISourceBlock<in TInput>? source, bool consumeToAccept);
abstract member OfferMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * 'Input * System.Threading.Tasks.Dataflow.ISourceBlock<'Input> * bool -> System.Threading.Tasks.Dataflow.DataflowMessageStatus
Public Function OfferMessage (messageHeader As DataflowMessageHeader, messageValue As TInput, source As ISourceBlock(Of In TInput), consumeToAccept As Boolean) As DataflowMessageStatus

Parametreler

messageHeader
DataflowMessageHeader

DataflowMessageHeader Sunulan iletinin üst bilgisini temsil eden örnek.

messageValue
TInput

Sunulan iletinin değeri.

source
ISourceBlock<TInput>

İletiyi ISourceBlock<TOutput> sunan. Bu null olabilir.

consumeToAccept
Boolean

true hedefine, iletiyi kullanmak için ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean) döndürülmeden OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean)önce çağrısı sırasında zaman uyumlu bir şekilde çağrılmasını Acceptedbildirmek için olarak ayarlayın.

Döndürülenler

Sunulan iletinin durumu. İleti hedef tarafından kabul edildiyse, Accepted döndürülür 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üketmeye veya ayırmaya çalışabileceğini belirten bir bildirim olarak döndürülür; bu arada, iletinin sahibi kaynaktır ve diğer bloklara sunabilir.

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

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

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

Özel durumlar

messageHeader geçerli değil.

-veya- consumeToAccept yalnızca null sourceolmayan bir ile sağlanmışsa doğru olabilir.

Şunlara uygulanır