次の方法で共有


ActionBlock<TInput>.ITargetBlock<TInput>.OfferMessage メソッド

定義

メッセージをデータ フローのブロックに提供し、メッセージを使用するか、または延期する機会を与えます。

 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

提供されるメッセージのヘッダー。

messageValue
TInput

提供されるメッセージの値。

source
ISourceBlock<TInput>

メッセージを伝えているデータフローのブロック。 null でもかまいません。

consumeToAccept
Boolean

メッセージを使用するために、Accepted を返す前に OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean) の呼び出し中に ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean) を同期的に呼び出すようにターゲットに指示する場合は、true。それ以外の場合は false

戻り値

提供されたメッセージのステータス。 メッセージがターゲットによって受け入れられた場合は、Accepted が返されます。メッセージはターゲットに所有されるようになったので、ソースは提供されたメッセージを使用しないようにする必要があります。 メッセージがターゲットによって延期された場合、ターゲットが後でメッセージの使用または予約を試みる可能性があることを示す通知として Postponed が返されます。その間、ソースはそのメッセージを引き続き所有し、他のブロックに提供する可能性があります。

ターゲットがメッセージを遅延するはずだったのに、ソースが null だった場合は、Declined が返されます。

ターゲットがメッセージを受け入れようとしたが、ソースが別のターゲットにメッセージを配信したか、単純に破棄したため、受け入れることができなかった場合は、NotAvailable が返されます。

ターゲットがメッセージを受け入れなかった場合は、Declined が返されます。 ターゲットがメッセージを受け入れず、今後、このソースからの別のメッセージを受け入れない場合は、DecliningPermanently が返されます。

実装

例外

messageHeader が無効です。

または、consumeToAccept は、source の値が null 以外である場合にのみ true にすることができます。

適用対象