WorkflowQueue Clase

Definición

Precaución

The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*

Representa una cola del flujo de trabajo.

public ref class WorkflowQueue
public class WorkflowQueue
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public class WorkflowQueue
type WorkflowQueue = class
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type WorkflowQueue = class
Public Class WorkflowQueue
Herencia
WorkflowQueue
Atributos

Ejemplos

En el siguiente código de ejemplo se muestra cómo crear un WorkflowQueue llamando al método WorkflowQueuingService.GetWorkflowQueue. También utiliza la propiedad Count para determinar si los mensajes existen en la cola actual. Finalmente, el código utiliza el método Dequeue para quitar y devolver el primer objeto en la cola.

Este ejemplo de código forma parte de la muestra de SDK de actividad de observador de archivo del archivo FileSystemEvent.cs. Para obtener más información, vea Actividad del monitor del sistema de archivos.

private bool ProcessQueueItem(ActivityExecutionContext context)
{
    WorkflowQueuingService qService = context.GetService<WorkflowQueuingService>();
    if (!qService.Exists(this.QueueName))
    {
        return false;
    }

    WorkflowQueue queue = qService.GetWorkflowQueue(this.QueueName);

    // If the queue has messages, then process the first one
    if (queue.Count == 0)
    {
        return false;
    }

    FileWatcherEventArgs e = (FileWatcherEventArgs)queue.Dequeue();

    // Raise the FileSystemEvent
    base.RaiseGenericEvent<FileWatcherEventArgs>(FileSystemEvent.FileWatcherEventHandlerEvent, this, e);

    DoUnsubscribe(context, this);
    DeleteQueue(context);
    return true;
}
Private Function ProcessQueueItem(ByVal context As ActivityExecutionContext) As Boolean

    Dim qService As WorkflowQueuingService = context.GetService(Of WorkflowQueuingService)()

    If Not qService.Exists(Me.QueueName) Then
        Return False
    End If

    Dim Queue As WorkflowQueue = qService.GetWorkflowQueue(Me.QueueName)

    ' If the queue has messages, then process the first one
    If Queue.Count = 0 Then
        Return False
    End If

    Dim e As FileWatcherEventArgs = CType(Queue.Dequeue(), FileWatcherEventArgs)

    ' Raise the FileSystemEvent
    MyBase.RaiseGenericEvent(Of FileWatcherEventArgs)(FileSystemEvent.FileWatcherEventHandlerEvent, Me, e)
    DoUnsubscribe(context, Me)
    DeleteQueue(context)
    Return True
End Function

Comentarios

Nota

En esta documentación se describen los tipos y espacios de nombres que están obsoletos. Para obtener más información, vea Tipos en desuso en Windows Workflow Foundation 4.5.

Las colas de flujo de trabajo se utilizan para pasar los mensajes entre un host o servicios de host y actividades en un flujo de trabajo. Cualquier actividad puede crear un WorkflowQueue llamando WorkflowQueuingService.CreateWorkflowQueuey un host, un servicio u otra actividad pueden llamar a Enqueue para agregar un elemento a ese WorkflowQueue. Puede suscribir al evento QueueItemAvailable que se notificará cuando un elemento llegue a WorkflowQueue. Puede utilizar Peek para examinar al principio un elemento de WorkflowQueue y Dequeue para quitar un elemento de WorkflowQueue. Cada WorkflowQueue se asocia a una clase WorkflowQueuingService que usted puede utilizar para realizar otras operaciones de administración en WorkflowQueue, como eliminar la cola. QueuingService expone la clase WorkflowQueuingService asociada a WorkflowQueue.

Propiedades

Count
Obsoletos.

Obtiene el número de elementos contenidos en WorkflowQueue.

Enabled
Obsoletos.

Obtiene o establece un valor que especifica si WorkflowQueue está habilitado.

QueueName
Obsoletos.

Obtiene el nombre de la cola del flujo de trabajo.

QueuingService
Obsoletos.

Obtiene los servicios de cola asociados con WorkflowQueue.

Métodos

Dequeue()
Obsoletos.

Quita y devuelve el objeto al comienzo de WorkflowQueue.

Enqueue(Object)
Obsoletos.

Agrega un objeto al final de WorkflowQueue.

Equals(Object)
Obsoletos.

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()
Obsoletos.

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()
Obsoletos.

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()
Obsoletos.

Crea una copia superficial del Object actual.

(Heredado de Object)
Peek()
Obsoletos.

Devuelve un objeto al principio de WorkflowQueue sin eliminarlo.

RegisterForQueueItemArrived(IActivityEventListener<QueueEventArgs>)
Obsoletos.

Registra un suscriptor en el evento QueueItemArrived.

RegisterForQueueItemAvailable(IActivityEventListener<QueueEventArgs>)
Obsoletos.

Registra un suscriptor en el evento QueueItemAvailable.

RegisterForQueueItemAvailable(IActivityEventListener<QueueEventArgs>, String)
Obsoletos.

Registra un suscriptor en el evento QueueItemAvailable.

ToString()
Obsoletos.

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
UnregisterForQueueItemArrived(IActivityEventListener<QueueEventArgs>)
Obsoletos.

Anula un suscriptor en el evento QueueItemArrived.

UnregisterForQueueItemAvailable(IActivityEventListener<QueueEventArgs>)
Obsoletos.

Anula un suscriptor en el evento QueueItemAvailable.

Eventos

QueueItemArrived
Obsoletos.

Se produce cuando un elemento se entrega en este WorkflowQueue.

QueueItemAvailable
Obsoletos.

Se produce cuando un elemento está disponible en este WorkflowQueue.

Se aplica a

Consulte también