共用方式為


TransformManyBlock<TInput,TOutput>.ITargetBlock<TInput>.OfferMessage 方法

定義

提供了訊息給ITargetBlock<TInput>,讓目標有機會使用或延後訊息。

 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

參數

messageHeader
DataflowMessageHeader

DataflowMessageHeader執行個體,表示所提供的訊息的標頭。

messageValue
TInput

正在提供的訊息的值。

source
ISourceBlock<TInput>

提供訊息的 ISourceBlock<TOutput>。 這可能是 null

consumeToAccept
Boolean

如果目標必須在傳回 ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean) 之前,在呼叫 ITargetBlock<TInput> 期間,以同步方式呼叫 Accepted 以使用訊息,則為 true

傳回

DataflowMessageStatus

提供之訊息的狀態。 如果目標已接受訊息,則會傳回 Accepted,而且來源不應該再使用所提供的訊息,因為現在它是目標所擁有。 如果訊息已由目標延後,會以通知形式傳回 Postponed,目標稍後可能會嘗試使用或保留訊息,同時來源仍擁有訊息,而且可能會將訊息提供給其他區塊。

如果目標會延後,但來源是 null,則改為傳回 Declined

如果目標嘗試接受訊息,但因為來源將訊息傳遞給另一個目標或直接捨棄訊息,使得目標遺漏訊息,則會傳回 NotAvailable

如果目標選擇不接受訊息,則會傳回 Declined。 如果目標選擇不接受此訊息,且將不會接受來自此來源的其他訊息,則會傳回 DecliningPermanently

實作

例外狀況

messageHeader 無效。

-或- 如果提供非 null consumeToAccept,則source 只可以是 true。

適用於