BatchBlock<T> Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Girişleri diziler halinde toplu olarak işleyen bir veri akışı bloğu sağlar.
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)
Tür Parametreleri
- T
Toplu işlemlere koyulan veri türünü belirtir.
- Devralma
-
BatchBlock<T>
- Uygulamalar
Açıklamalar
Note
TPL Veri Akışı Kitaplığı (System.Threading.Tasks.Dataflow ad alanı) .NET ile dağıtılmaz. Visual Studio'da System.Threading.Tasks.Dataflow ad alanını yüklemek için projenizi açın, Project menüsünden NuGet Paketlerini Yönet seçin ve System.Threading.Tasks.Dataflow paketini çevrimiçi olarak arayın. Alternatif olarak, .NET Core CLI kullanarakyüklemek için dotnet add package System.Threading.Tasks.Dataflowçalıştırın.
Oluşturucular
| Name | Description |
|---|---|
| BatchBlock<T>(Int32, GroupingDataflowBlockOptions) |
Belirtilen toplu iş boyutu, azalan seçenek ve blok seçenekleriyle yeni BatchBlock<T> bir başlatır. |
| BatchBlock<T>(Int32) |
Belirtilen toplu iş boyutuyla yeni BatchBlock<T> bir başlatır. |
Özellikler
| Name | Description |
|---|---|
| BatchSize |
Bu BatchBlock<T>tarafından oluşturulan toplu işin boyutunu alır. |
| Completion |
Zaman uyumsuz işlemi ve veri akışı bloğunun tamamlanmasını temsil eden bir Task alır. |
| OutputCount |
Bu bloktan alınabilecek çıkış öğelerinin sayısını alır. |
Yöntemler
| Name | Description |
|---|---|
| Complete() |
IDataflowBlock daha fazla ileti kabul etmemesi veya üretmemesi ya da ertelenmiş iletileri kullanmaması gerektiğine dair sinyaller. |
| Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
| GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
| GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| LinkTo(ITargetBlock<T[]>, DataflowLinkOptions) |
öğesini ISourceBlock<TOutput> belirtilen ITargetBlock<TInput> öğesine bağlar. |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| ToString() |
Bu IDataflowBlock örneğin biçimlendirilmiş adını temsil eden bir dize döndürür. |
| TriggerBatch() |
Şu anda kuyruğa alınmış veya ertelenen öğelerin sayısı değerinden az BatchBlock<T>olsa bile toplu işlem başlatmak için öğesini tetiklerBatchSize. |
| TryReceive(Predicate<T[]>, T[]) |
öğesinden IReceivableSourceBlock<TOutput>zaman uyumlu bir şekilde kullanılabilir bir çıkış öğesi almaya çalışır. |
| TryReceiveAll(IList<T[]>) |
öğesinden IReceivableSourceBlock<TOutput>tüm kullanılabilir öğeleri zaman uyumlu bir şekilde almaya çalışır. |
Belirtik Arabirim Kullanımları
| Name | Description |
|---|---|
| IDataflowBlock.Fault(Exception) |
öğesinin IDataflowBlock bir Faulted durumda tamamlanmasını neden olur. |
| ISourceBlock<T[]>.ConsumeMessage(DataflowMessageHeader, ITargetBlock<T[]>, Boolean) |
Bu tarafından daha önce sunulan bir ITargetBlock<TInput> öğesini kabul etmek ve kullanmak için bağlı DataflowMessageHeader tarafından çağrılır ISourceBlock<TOutput> . |
| ISourceBlock<T[]>.ReleaseReservation(DataflowMessageHeader, ITargetBlock<T[]>) |
Daha önce bu tarafından ayrılmış ITargetBlock<TInput> bir sürümü yayınlamak için bağlı DataflowMessageHeader bir tarafından çağrılırISourceBlock<TOutput>. |
| ISourceBlock<T[]>.ReserveMessage(DataflowMessageHeader, ITargetBlock<T[]>) |
Bu tarafından daha önce sunulan bir ayırmak için bağlı ITargetBlock<TInput> tarafından çağrılır DataflowMessageHeaderISourceBlock<TOutput>. |
| ITargetBlock<T>.OfferMessage(DataflowMessageHeader, T, ISourceBlock<T>, Boolean) |
hedefine ITargetBlock<TInput>iletiyi kullanma veya erteleme fırsatı veren bir ileti sunar. |
Uzantı Metotları
| Name | Description |
|---|---|
| AsObservable<TOutput>(ISourceBlock<TOutput>) |
üzerinde IObservable<T>yeni ISourceBlock<TOutput> bir soyutlama oluşturur. |
| AsObserver<TInput>(ITargetBlock<TInput>) |
üzerinde IObserver<T>yeni ITargetBlock<TInput> bir soyutlama oluşturur. |
| LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, DataflowLinkOptions, Predicate<TOutput>) |
ISourceBlock<TOutput> belirtilen filtreyi kullanarak öğesini belirtilene ITargetBlock<TInput> bağlar. |
| LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, Predicate<TOutput>) |
ISourceBlock<TOutput> belirtilen filtreyi kullanarak öğesini belirtilene ITargetBlock<TInput> bağlar. |
| LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>) |
öğesini ISourceBlock<TOutput> belirtilen ITargetBlock<TInput>öğesine bağlar. |
| OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Kaynağı kullanılabilir çıkış için zaman uyumsuz olarak izleyen bir Task<TResult> sağlar. |
| OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>) |
Kaynağı kullanılabilir çıkış için zaman uyumsuz olarak izleyen bir Task<TResult> sağlar. |
| Post<TInput>(ITargetBlock<TInput>, TInput) |
Öğesine bir öğe postalar ITargetBlock<TInput>. |
| Receive<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Belirtilen kaynaktan zaman uyumlu olarak bir değer alır ve işlemi iptal etmek için bir belirteç sağlar. |
| Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
Belirtilen kaynaktan zaman uyumlu bir şekilde bir değer alır ve işlemi iptal etmek için bir belirteç sağlar ve isteğe bağlı bir zaman aşımı aralığını gözlemler. |
| Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
Belirli bir kaynaktan isteğe bağlı zaman aşımı süresini gözlemleyerek zaman uyumlu bir şekilde bir değer alır. |
| Receive<TOutput>(ISourceBlock<TOutput>) |
Belirtilen kaynaktan zaman uyumlu olarak bir değer alır. |
| ReceiveAllAsync<TOutput>(IReceivableSourceBlock<TOutput>, CancellationToken) |
Kaynaktan tüm verilerin alınmasını sağlayan bir IAsyncEnumerable<T> oluşturur. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
Belirli bir kaynaktan zaman uyumsuz olarak bir değer alır ve işlemi iptal etmek için bir belirteç sağlar. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
Belirli bir kaynaktan zaman uyumsuz olarak bir değer alır ve işlemi iptal etmek için bir belirteç sağlar ve isteğe bağlı bir zaman aşımı aralığını gözlemler. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
İsteğe bağlı zaman aşımı süresini gözlemleyerek belirtilen kaynaktan zaman uyumsuz olarak bir değer alır. |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>) |
Belirtilen kaynaktan zaman uyumsuz olarak bir değer alır. |
| SendAsync<TInput>(ITargetBlock<TInput>, TInput, CancellationToken) |
Zaman uyumsuz olarak hedef ileti bloğuna bir ileti sunar ve ertelemeye olanak tanır. |
| SendAsync<TInput>(ITargetBlock<TInput>, TInput) |
Zaman uyumsuz olarak hedef ileti bloğuna bir ileti sunar ve ertelemeye olanak tanır. |
| TryReceive<TOutput>(IReceivableSourceBlock<TOutput>, TOutput) |
öğesinden ISourceBlock<TOutput>bir öğeyi zaman uyumlu bir şekilde almaya çalışır. |