BufferBlock<T> Osztály

Definíció

Puffert biztosít az adatfolyamok adatainak tárolásához.

generic <typename T>
public ref class BufferBlock sealed : System::Threading::Tasks::Dataflow::IPropagatorBlock<T, T>, System::Threading::Tasks::Dataflow::IReceivableSourceBlock<T>, System::Threading::Tasks::Dataflow::ISourceBlock<T>, System::Threading::Tasks::Dataflow::ITargetBlock<T>
public sealed class BufferBlock<T> : System.Threading.Tasks.Dataflow.IPropagatorBlock<T,T>, System.Threading.Tasks.Dataflow.IReceivableSourceBlock<T>, System.Threading.Tasks.Dataflow.ISourceBlock<T>, System.Threading.Tasks.Dataflow.ITargetBlock<T>
type BufferBlock<'T> = class
    interface IPropagatorBlock<'T, 'T>
    interface ITargetBlock<'T>
    interface IDataflowBlock
    interface ISourceBlock<'T>
    interface IReceivableSourceBlock<'T>
type BufferBlock<'T> = class
    interface IDataflowBlock
    interface IPropagatorBlock<'T, 'T>
    interface ISourceBlock<'T>
    interface ITargetBlock<'T>
    interface IReceivableSourceBlock<'T>
Public NotInheritable Class BufferBlock(Of T)
Implements IPropagatorBlock(Of T, T), IReceivableSourceBlock(Of T), ISourceBlock(Of T), ITargetBlock(Of T)

Típusparaméterek

T

Megadja az adatfolyam-blokk által pufferelt adatok típusát.

Öröklődés
BufferBlock<T>
Megvalósítás

Megjegyzések

Note

A TPL-adatfolyamtár (a System.Threading.Tasks.Dataflow névtér) nincs elosztva a .NET-tel. Ha telepíteni szeretné a System.Threading.Tasks.Dataflow névteret a Visual Studióban, nyissa meg a projektet, válassza NuGet-csomagok kezelése a Project menüjében, és keressen online a System.Threading.Tasks.Dataflow csomagra. Másik lehetőségként a .NET Core CLI használatával telepítheti, futtassa a dotnet add package System.Threading.Tasks.Dataflow.

Konstruktorok

Name Description
BufferBlock<T>()

Új inicializálása BufferBlock<T>.

BufferBlock<T>(DataflowBlockOptions)

Inicializál egy újat BufferBlock<T> a megadottval DataflowBlockOptions.

Tulajdonságok

Name Description
Completion

Task Lekéri az adatfolyam-blokk aszinkron műveletét és befejezését ábrázoló értéket.

Count

Lekéri a pufferben jelenleg tárolt elemek számát.

Metódusok

Name Description
Complete()

Azt jelzi IDataflowBlock , hogy nem fogadhat el és nem hozhat létre több üzenetet, és nem használ fel több elhalasztott üzenetet.

Equals(Object)

Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal.

(Öröklődés forrása Object)
GetHashCode()

Ez az alapértelmezett kivonatoló függvény.

(Öröklődés forrása Object)
GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
LinkTo(ITargetBlock<T>, DataflowLinkOptions)

A megadotthoz csatolja a ISourceBlock<TOutput> elemet ITargetBlock<TInput>.

MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
ToString()

Egy sztringet ad vissza, amely a példány formázott nevét IDataflowBlock jelöli.

TryReceive(Predicate<T>, T)

Egy elérhető kimeneti elem szinkronizálási kísérlete a IReceivableSourceBlock<TOutput>.

TryReceiveAll(IList<T>)

Az összes rendelkezésre álló elem szinkron fogadására tett kísérletek a IReceivableSourceBlock<TOutput>.

Explicit interfész-implementációk

Name Description
IDataflowBlock.Fault(Exception)

IDataflowBlock A befejezést egy állapotban Faulted okozza.

ISourceBlock<T>.ConsumeMessage(DataflowMessageHeader, ITargetBlock<T>, Boolean)

Egy hivatkozott meghívjaITargetBlock<TInput>, hogy elfogadja és felhasználja DataflowMessageHeader a korábban kínált.ISourceBlock<TOutput>

ISourceBlock<T>.ReleaseReservation(DataflowMessageHeader, ITargetBlock<T>)

A program meghívja egy, a korábban fenntartott ITargetBlock<TInput>DataflowMessageHeaderkiadás kiadásához csatolt hivatkozássalISourceBlock<TOutput>.

ISourceBlock<T>.ReserveMessage(DataflowMessageHeader, ITargetBlock<T>)

A program meghívja a korábban a jelen szolgáltatás által kínált ITargetBlock<TInput> foglaláshoz kapcsolódó hivatkozással.DataflowMessageHeaderISourceBlock<TOutput>

ITargetBlock<T>.OfferMessage(DataflowMessageHeader, T, ISourceBlock<T>, Boolean)

Üzenetet küld a ITargetBlock<TInput>címzettnek, amely lehetőséget ad a célnak az üzenet felhasználására vagy elhalasztására.

Bővítő metódusok

Name Description
AsObservable<TOutput>(ISourceBlock<TOutput>)

Új IObservable<T> absztrakciót hoz létre a ISourceBlock<TOutput>.

AsObserver<TInput>(ITargetBlock<TInput>)

Új IObserver<T> absztrakciót hoz létre a ITargetBlock<TInput>.

LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, DataflowLinkOptions, Predicate<TOutput>)

A megadott szűrővel csatolja a ISourceBlock<TOutput> megadotthoz ITargetBlock<TInput> .

LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, Predicate<TOutput>)

A megadott szűrővel csatolja a ISourceBlock<TOutput> megadotthoz ITargetBlock<TInput> .

LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>)

A megadotthoz csatolja a ISourceBlock<TOutput> elemet ITargetBlock<TInput>.

OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken)

Task<TResult> A rendelkezésre álló kimenet forrását aszinkron módon figyeli.

OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>)

Task<TResult> A rendelkezésre álló kimenet forrását aszinkron módon figyeli.

Post<TInput>(ITargetBlock<TInput>, TInput)

Elem bejegyzése a következőre: .>

Receive<TOutput>(ISourceBlock<TOutput>, CancellationToken)

Szinkron módon kap egy értéket egy megadott forrástól, és egy jogkivonatot biztosít a művelet megszakításához.

Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken)

Szinkron módon kap egy értéket egy megadott forrástól, amely egy jogkivonatot biztosít a művelet megszakításához és egy opcionális időtúllépési időköz megfigyeléséhez.

Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan)

Szinkron módon kap egy értéket egy megadott forrástól, figyelembe véve az opcionális időtúllépési időszakot.

Receive<TOutput>(ISourceBlock<TOutput>)

Szinkron módon kap egy értéket egy megadott forrásból.

ReceiveAllAsync<TOutput>(IReceivableSourceBlock<TOutput>, CancellationToken)

Létrehoz egy olyan alkalmazást IAsyncEnumerable<T> , amely lehetővé teszi az összes adat fogadását a forrásból.

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken)

Aszinkron módon kap egy értéket egy megadott forrástól, és egy jogkivonatot biztosít a művelet megszakításához.

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken)

Aszinkron módon kap egy értéket egy megadott forrástól, amely jogkivonatot biztosít a művelet megszakításához és egy opcionális időtúllépési időköz megfigyeléséhez.

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan)

Aszinkron módon kap egy értéket egy megadott forrástól, egy opcionális időtúllépési időszakot figyelve.

ReceiveAsync<TOutput>(ISourceBlock<TOutput>)

Aszinkron módon egy adott forrásból kap értéket.

SendAsync<TInput>(ITargetBlock<TInput>, TInput, CancellationToken)

Aszinkron módon üzenetet küld a célüzenetblokknak, ami lehetővé teszi a halasztást.

SendAsync<TInput>(ITargetBlock<TInput>, TInput)

Aszinkron módon üzenetet küld a célüzenetblokknak, ami lehetővé teszi a halasztást.

TryReceive<TOutput>(IReceivableSourceBlock<TOutput>, TOutput)

Megkísérli szinkronizálva fogadni az elemet a ISourceBlock<TOutput>.

A következőre érvényes: