BatchBlock<T> Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt einen Datenflussblock bereit, der Eingaben in Arrays stapelt.
generic <typename T>
public ref class BatchBlock sealed : System::Threading::Tasks::Dataflow::IPropagatorBlock<T, cli::array <T> ^>, System::Threading::Tasks::Dataflow::IReceivableSourceBlock<cli::array <T> ^>, System::Threading::Tasks::Dataflow::ISourceBlock<cli::array <T> ^>, System::Threading::Tasks::Dataflow::ITargetBlock<T>
public sealed class BatchBlock<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 BatchBlock<'T> = class
interface IPropagatorBlock<'T, 'T[]>
interface ITargetBlock<'T>
interface IDataflowBlock
interface ISourceBlock<'T[]>
interface IReceivableSourceBlock<'T[]>
type BatchBlock<'T> = class
interface IDataflowBlock
interface IPropagatorBlock<'T, 'T[]>
interface ISourceBlock<'T[]>
interface ITargetBlock<'T>
interface IReceivableSourceBlock<'T[]>
Public NotInheritable Class BatchBlock(Of T)
Implements IPropagatorBlock(Of T, T()), IReceivableSourceBlock(Of T()), ISourceBlock(Of T()), ITargetBlock(Of T)
Typparameter
- T
Gibt den Datentyp an, der in Batches eingefügt werden soll.
- Vererbung
-
BatchBlock<T>
- Implementiert
Hinweise
Note
Die TPL Dataflow Library (der System.Threading.Tasks.Dataflow Namespace) wird nicht mit .NET verteilt. Um den System.Threading.Tasks.Dataflow Namespace in Visual Studio zu installieren, öffnen Sie Ihr Projekt, wählen Sie "NuGet-Pakete verwalten " im Menü "Projekt " aus, und suchen Sie online nach dem System.Threading.Tasks.Dataflow Paket. Führen Sie alternativ das .NET Core CLI aus, um es zu installieren, indem Sie dotnet add package System.Threading.Tasks.Dataflow ausführen.
Konstruktoren
| Name | Beschreibung |
|---|---|
| BatchBlock<T>(Int32, GroupingDataflowBlockOptions) |
Initialisiert ein neues BatchBlock<T> mit der angegebenen Batchgröße, der degressierenden Option und den Blockoptionen. |
| BatchBlock<T>(Int32) |
Initialisiert ein neues BatchBlock<T> mit der angegebenen Batchgröße. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| BatchSize |
Ruft die Größe der von diesem BatchBlock<T>generierten Batches ab. |
| Completion |
Ruft einen Task , der den asynchronen Vorgang und den Abschluss des Datenflussblocks darstellt. |
| OutputCount |
Ruft die Anzahl der Ausgabeelemente ab, die von diesem Block empfangen werden können. |
Methoden
| Name | Beschreibung |
|---|---|
| Complete() |
Signalisiert, IDataflowBlock dass sie weder mehr Nachrichten akzeptieren noch mehr nachrichten produzieren sollte, noch mehr verschobene Nachrichten verbrauchen. |
| Equals(Object) |
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
| GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| LinkTo(ITargetBlock<T[]>, DataflowLinkOptions) |
Verknüpft den ISourceBlock<TOutput> angegebenen ITargetBlock<TInput> Wert. |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| ToString() |
Gibt eine Zeichenfolge zurück, die den formatierten Namen dieser IDataflowBlock Instanz darstellt. |
| TriggerBatch() |
Löst das BatchBlock<T> Auslösen eines Batchvorgangs aus, auch wenn die Anzahl der aktuell in die Warteschlange gestellten oder verschobenen Elemente kleiner ist als die BatchSize. |
| TryReceive(Predicate<T[]>, T[]) |
Versucht, synchron ein verfügbares Ausgabeelement von der IReceivableSourceBlock<TOutput>. |
| TryReceiveAll(IList<T[]>) |
Versucht, alle verfügbaren Elemente synchron von der IReceivableSourceBlock<TOutput>. |
Explizite Schnittstellenimplementierungen
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| AsObservable<TOutput>(ISourceBlock<TOutput>) |
Erstellt eine neue IObservable<T> Abstraktion über dem ISourceBlock<TOutput>. |
| AsObserver<TInput>(ITargetBlock<TInput>) |
Erstellt eine neue IObserver<T> Abstraktion über dem ITargetBlock<TInput>. |
| LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, DataflowLinkOptions, Predicate<TOutput>) |
Verknüpft den ISourceBlock<TOutput> angegebenen Filter mit dem angegebenen ITargetBlock<TInput> Filter. |
| LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, Predicate<TOutput>) |
Verknüpft den ISourceBlock<TOutput> angegebenen Filter mit dem angegebenen ITargetBlock<TInput> Filter. |
| LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>) |
Verknüpft den ISourceBlock<TOutput> angegebenen ITargetBlock<TInput>Wert. |
| OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Stellt eine Bereit Task<TResult> , die die Quelle asynchron auf die verfügbare Ausgabe überwacht. |
| OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>) |
Stellt eine Bereit Task<TResult> , die die Quelle asynchron auf die verfügbare Ausgabe überwacht. |
| Post<TInput>(ITargetBlock<TInput>, TInput) |
Stellt ein Element in das ITargetBlock<TInput>. |
| Receive<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Empfängt synchron einen Wert aus einer angegebenen Quelle und stellt ein Token zum Abbrechen des Vorgangs bereit. |
| Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
Empfängt synchron einen Wert aus einer angegebenen Quelle und stellt ein Token bereit, um den Vorgang abzubrechen und ein optionales Timeoutintervall zu beobachten. |
| Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
Empfängt synchron einen Wert aus einer angegebenen Quelle, wobei ein optionaler Timeoutzeitraum beobachtet wird. |
| Receive<TOutput>(ISourceBlock<TOutput>) |
Empfängt synchron einen Wert aus einer angegebenen Quelle. |
| ReceiveAllAsync<TOutput>(IReceivableSourceBlock<TOutput>, CancellationToken) |
Erstellt eine IAsyncEnumerable<T> , die das Empfangen aller Daten aus der Quelle ermöglicht. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Empfängt asynchron einen Wert aus einer angegebenen Quelle und stellt ein Token zum Abbrechen des Vorgangs bereit. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
Empfängt asynchron einen Wert aus einer angegebenen Quelle und stellt ein Token bereit, um den Vorgang abzubrechen und ein optionales Timeoutintervall zu beobachten. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
Empfängt asynchron einen Wert aus einer angegebenen Quelle, wobei ein optionaler Timeoutzeitraum beobachtet wird. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>) |
Empfängt asynchron einen Wert aus einer angegebenen Quelle. |
| SendAsync<TInput>(ITargetBlock<TInput>, TInput, CancellationToken) |
Bietet asynchron eine Nachricht an den Zielnachrichtenblock, sodass eine Verschiebung möglich ist. |
| SendAsync<TInput>(ITargetBlock<TInput>, TInput) |
Bietet asynchron eine Nachricht an den Zielnachrichtenblock, sodass eine Verschiebung möglich ist. |
| TryReceive<TOutput>(IReceivableSourceBlock<TOutput>, TOutput) |
Versucht, ein Element synchron von der ISourceBlock<TOutput>. |