Compartir a través de


AsyncPipeline Clase

Definición

Clase de utilidad auxiliar que permite controlar la velocidad de generación de actividades asincrónicas. Mantiene una canalización de operaciones asincrónicas hasta una capacidad máxima determinada y bloquea el subproceso de llamada si la canalización es demasiado profunda antes de que no finalicen las operaciones en cola. Agrega eficazmente una presión inversa al autor de la llamada. Esto es principalmente útil para los granos de prueba de esfuerzo bajo carga controlada y nunca debe usarse desde dentro de un código de grano.

public class AsyncPipeline : Orleans.Runtime.IPipeline
type AsyncPipeline = class
    interface IPipeline
Public Class AsyncPipeline
Implements IPipeline
Herencia
AsyncPipeline
Implementaciones

Constructores

AsyncPipeline()

Construye una AsyncPipeline vacía con capacidad igual a DefaultCapacity.

AsyncPipeline(Int32)

Construye una AsyncPipeline vacía con una capacidad determinada.

Campos

DEFAULT_CAPACITY

Capacidad predeterminada de esta AsyncPipeline. Es igual a 10.

Propiedades

Capacity

Número máximo de operaciones asincrónicas en curso que se pueden poner en cola en esta canalización asincrónica.

Count

Número de elementos actualmente puestos en cola en esta canalización asincrónica.

Métodos

Add(Task)

Agrega una nueva tarea a esta AsyncPipeline.

AddRange(IEnumerable<Task>)

Agrega una colección de tareas a esta AsyncPipeline.

AddRange<T>(IEnumerable<Task<T>>)

Agrega una colección de tareas a esta AsyncPipeline.

Wait()

Espera hasta que se realicen todas las operaciones asincrónicas actualmente en cola. Bloquea el subproceso de llamada.

Se aplica a