ISourceBlock<TOutput>.ReserveMessage Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Chiamato da un ITargetBlock<TInput> collegato per conservare un DataflowMessageHeader precedentemente offerto da questo ISourceBlock<TOutput>.
public:
bool ReserveMessage(System::Threading::Tasks::Dataflow::DataflowMessageHeader messageHeader, System::Threading::Tasks::Dataflow::ITargetBlock<TOutput> ^ target);
public bool ReserveMessage (System.Threading.Tasks.Dataflow.DataflowMessageHeader messageHeader, System.Threading.Tasks.Dataflow.ITargetBlock<out TOutput> target);
abstract member ReserveMessage : System.Threading.Tasks.Dataflow.DataflowMessageHeader * System.Threading.Tasks.Dataflow.ITargetBlock<'Output> -> bool
Public Function ReserveMessage (messageHeader As DataflowMessageHeader, target As ITargetBlock(Of Out TOutput)) As Boolean
Parametri
- messageHeader
- DataflowMessageHeader
DataflowMessageHeader del messaggio prenotato.
- target
- ITargetBlock<TOutput>
ITargetBlock<TInput> che riserva il messaggio.
Restituisce
true
se il messaggio è stato riservato, false
in caso contrario.
Eccezioni
L'elemento messageHeader
non è valido.
L'elemento target
è null
.
Commenti
Solo ITargetBlock<TInput> le istanze collegate a questa ISourceBlock<TOutput> istanza possono usare ReserveMessagee devono essere usate solo per riservare DataflowMessageHeader le istanze offerte in precedenza da questa origine alla destinazione.
Se true
viene restituito, è ITargetBlock<TInput> necessario chiamare ConsumeMessage successivamente o ReleaseReservation per questo messaggio. In caso contrario, è possibile che l'origine non sia in grado di propagare altri messaggi a questa o ad altre destinazioni.
ReserveMessage non deve essere chiamato mentre la destinazione contiene blocchi interni. In questo modo si viola la gerarchia di blocchi necessaria per evitare deadlock in una rete di flusso di dati.