WriteOnceBlock<T>.ITargetBlock<T>.OfferMessage Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menawarkan pesan ke ITargetBlock<TInput>, memberikan target kesempatan untuk mengonsumsi atau menunda pesan.
virtual System::Threading::Tasks::Dataflow::DataflowMessageStatus System.Threading.Tasks.Dataflow.ITargetBlock<T>.OfferMessage(System::Threading::Tasks::Dataflow::DataflowMessageHeader messageHeader, T messageValue, System::Threading::Tasks::Dataflow::ISourceBlock<T> ^ source, bool consumeToAccept) = System::Threading::Tasks::Dataflow::ITargetBlock<T>::OfferMessage;
System.Threading.Tasks.Dataflow.DataflowMessageStatus ITargetBlock<T>.OfferMessage (System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, T messageValue, System.Threading.Tasks.Dataflow.ISourceBlock<T> source, bool consumeToAccept);
abstract member System.Threading.Tasks.Dataflow.ITargetBlock<T>.OfferMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * 'T * System.Threading.Tasks.Dataflow.ISourceBlock<'T> * bool -> System.Threading.Tasks.Dataflow.DataflowMessageStatus
override this.System.Threading.Tasks.Dataflow.ITargetBlock<T>.OfferMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * 'T * System.Threading.Tasks.Dataflow.ISourceBlock<'T> * bool -> System.Threading.Tasks.Dataflow.DataflowMessageStatus
Function OfferMessage (messageHeader As DataflowMessageHeader, messageValue As T, source As ISourceBlock(Of T), consumeToAccept As Boolean) As DataflowMessageStatus Implements ITargetBlock(Of T).OfferMessage
Parameter
- messageHeader
- DataflowMessageHeader
DataflowMessageHeader Instans yang mewakili header pesan yang ditawarkan.
- messageValue
- T
Nilai pesan yang ditawarkan.
- source
- ISourceBlock<T>
Penawaran ISourceBlock<TOutput> pesan. Ini mungkin null
.
- consumeToAccept
- Boolean
Atur ke true
untuk menginstruksikan target untuk memanggil ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean) secara sinkron selama panggilan ke OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean), sebelum mengembalikan Accepted, untuk menggunakan pesan.
Mengembalikan
Status pesan yang ditawarkan. Jika pesan diterima oleh target, Accepted dikembalikan, dan sumber tidak boleh lagi menggunakan pesan yang ditawarkan, karena sekarang dimiliki oleh target. Jika pesan ditunda oleh target, Postponed dikembalikan sebagai pemberitahuan bahwa target nantinya dapat mencoba mengonsumsi atau memesan pesan; sementara itu, sumber masih memiliki pesan dan dapat menawarkannya ke blok lain.
Jika target akan memiliki pesan yang ditunda, tetapi source
adalah null
, Declined malah dikembalikan.
Jika target mencoba menerima pesan tetapi melewatkannya karena sumber yang mengirimkan pesan ke target lain atau hanya membuangnya, NotAvailable dikembalikan.
Jika target memilih untuk tidak menerima pesan, Declined dikembalikan. Jika target memilih untuk tidak menerima pesan dan tidak akan pernah menerima pesan lain dari sumber ini, DecliningPermanently dikembalikan.
Penerapan
Pengecualian
tidak messageHeader
valid.
-or- consumeToAccept
mungkin hanya benar jika disediakan dengan non-null source
.