BufferBlock<T> Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Udostępnia bufor do przechowywania danych dla przepływu danych.
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)
Parametry typu
- T
Określa typ danych buforowanych przez ten blok przepływu danych.
- Dziedziczenie
-
BufferBlock<T>
- Implementuje
Uwagi
Uwaga
Biblioteka przepływu danych TPL ( System.Threading.Tasks.Dataflow przestrzeń nazw) nie jest dystrybuowana za pomocą platformy .NET. Aby zainstalować System.Threading.Tasks.Dataflow przestrzeń nazw w programie Visual Studio, otwórz projekt, wybierz pozycję Zarządzaj pakietami NuGet z menu Project i wyszukaj pakiet w trybie online System.Threading.Tasks.Dataflow
. Alternatywnie, aby zainstalować go przy użyciu interfejsu wiersza polecenia platformy .NET Core, uruchom polecenie dotnet add package System.Threading.Tasks.Dataflow
.
Konstruktory
BufferBlock<T>() |
Inicjuje nowy BufferBlock<T>element . |
BufferBlock<T>(DataflowBlockOptions) |
Inicjuje nowy BufferBlock<T> element o określonej wartości DataflowBlockOptions. |
Właściwości
Completion |
Pobiera element reprezentujący operację Task asynchroniczną i ukończenie bloku przepływu danych. |
Count |
Pobiera liczbę elementów przechowywanych obecnie w buforze. |
Metody
Complete() |
Sygnały do IDataflowBlock tego, że nie powinny akceptować ani tworzyć więcej komunikatów, ani nie zużywać żadnych bardziej odroczonych komunikatów. |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetType() |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
LinkTo(ITargetBlock<T>, DataflowLinkOptions) |
Łączy element ISourceBlock<TOutput> z określonym ITargetBlock<TInput>elementem . |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
ToString() |
Zwraca ciąg reprezentujący sformatowaną nazwę tego IDataflowBlock wystąpienia. |
TryReceive(Predicate<T>, T) |
Próbuje synchronicznie odebrać dostępny element wyjściowy z elementu IReceivableSourceBlock<TOutput>. |
TryReceiveAll(IList<T>) |
Próbuje synchronicznie odebrać wszystkie dostępne elementy z elementu IReceivableSourceBlock<TOutput>. |
Jawne implementacje interfejsu
IDataflowBlock.Fault(Exception) |
IDataflowBlock Powoduje ukończenie Faulted operacji w stanie. |
ISourceBlock<T>.ConsumeMessage(DataflowMessageHeader, ITargetBlock<T>, Boolean) |
Wywołana przez link ITargetBlock<TInput> do akceptowania i korzystania z wcześniej oferowanej przez tę ISourceBlock<TOutput>usługę DataflowMessageHeader . |
ISourceBlock<T>.ReleaseReservation(DataflowMessageHeader, ITargetBlock<T>) |
Wywoływana przez połączony ITargetBlock<TInput> element z wydaniem wcześniej zastrzeżonym DataflowMessageHeader przez ten ISourceBlock<TOutput>element . |
ISourceBlock<T>.ReserveMessage(DataflowMessageHeader, ITargetBlock<T>) |
Wywoływana przez połączonego ITargetBlock<TInput> z rezerwą wcześniej oferowaną DataflowMessageHeader przez tę ISourceBlock<TOutput>usługę . |
ITargetBlock<T>.OfferMessage(DataflowMessageHeader, T, ISourceBlock<T>, Boolean) |
Oferuje komunikat do ITargetBlock<TInput>obiektu , dając docelową możliwość korzystania lub odroczenia wiadomości. |
Metody rozszerzania
AsObservable<TOutput>(ISourceBlock<TOutput>) |
Tworzy nową IObservable<T> abstrakcję nad elementem ISourceBlock<TOutput>. |
AsObserver<TInput>(ITargetBlock<TInput>) |
Tworzy nową IObserver<T> abstrakcję nad elementem ITargetBlock<TInput>. |
LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>) |
Łączy element ISourceBlock<TOutput> z określonym ITargetBlock<TInput>elementem . |
LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, Predicate<TOutput>) |
Łączy element ISourceBlock<TOutput> z określonym ITargetBlock<TInput> filtrem przy użyciu określonego filtru. |
LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, DataflowLinkOptions, Predicate<TOutput>) |
Łączy element ISourceBlock<TOutput> z określonym ITargetBlock<TInput> filtrem przy użyciu określonego filtru. |
OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>) |
Task<TResult> Zapewnia, że asynchronicznie monitoruje źródło dostępnych danych wyjściowych. |
OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Task<TResult> Zapewnia, że asynchronicznie monitoruje źródło dostępnych danych wyjściowych. |
Post<TInput>(ITargetBlock<TInput>, TInput) |
Publikuje element w elemencie ITargetBlock<TInput>. |
Receive<TOutput>(ISourceBlock<TOutput>) |
Synchronicznie odbiera wartość z określonego źródła. |
Receive<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Synchronicznie odbiera wartość z określonego źródła i udostępnia token do anulowania operacji. |
Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
Synchronicznie odbiera wartość z określonego źródła, obserwując opcjonalny okres przekroczenia limitu czasu. |
Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
Synchronicznie odbiera wartość z określonego źródła, zapewniając token umożliwiający anulowanie operacji i obserwowanie opcjonalnego interwału przekroczenia limitu czasu. |
ReceiveAllAsync<TOutput>(IReceivableSourceBlock<TOutput>, CancellationToken) |
Tworzy obiekt IAsyncEnumerable<T> , który umożliwia odbieranie wszystkich danych ze źródła. |
ReceiveAsync<TOutput>(ISourceBlock<TOutput>) |
Asynchronicznie odbiera wartość z określonego źródła. |
ReceiveAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Asynchronicznie odbiera wartość z określonego źródła i udostępnia token do anulowania operacji. |
ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
Asynchronicznie odbiera wartość z określonego źródła, obserwując opcjonalny okres przekroczenia limitu czasu. |
ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
Asynchronicznie odbiera wartość z określonego źródła, zapewniając token umożliwiający anulowanie operacji i obserwowanie opcjonalnego interwału przekroczenia limitu czasu. |
SendAsync<TInput>(ITargetBlock<TInput>, TInput) |
Asynchronicznie oferuje komunikat do docelowego bloku komunikatów, co pozwala na odroczenie. |
SendAsync<TInput>(ITargetBlock<TInput>, TInput, CancellationToken) |
Asynchronicznie oferuje komunikat do docelowego bloku komunikatów, co pozwala na odroczenie. |
TryReceive<TOutput>(IReceivableSourceBlock<TOutput>, TOutput) |
Próbuje synchronicznie odebrać element z elementu ISourceBlock<TOutput>. |