SendMessageChannelCache Clase

Definición

Representa una extensión que permite personalizar los niveles de uso compartido de la memoria caché, la configuración de la memoria caché del generador de canales y la de la memoria caché del canal para los flujos de trabajo que envían mensajes a los puntos de conexión de servicio usando las actividades de mensajería de Send.Represents an extension that enables the customization of the cache sharing levels, the settings of the channel factory cache, and the settings of the channel cache for workflows that send messages to service endpoints using Send messaging activities.

public ref class SendMessageChannelCache sealed : IDisposable
public sealed class SendMessageChannelCache : IDisposable
type SendMessageChannelCache = class
    interface IDisposable
Public NotInheritable Class SendMessageChannelCache
Implements IDisposable
Herencia
SendMessageChannelCache
Implementaciones

Ejemplos

En el siguiente ejemplo se muestra el uso de la clase SendMessageChannelCache para compartir la memoria caché de un canal entre dos aplicaciones de flujo de trabajo en un único dominio de aplicación.The following example shows how to use the SendMessageChannelCache class to share a channel cache between two workflow applications in a single app domain.


//sharing a channel cache between two workflow applications in a single app-domain.
sharedChannelCache = new SendMessageChannelCache(new ChannelCacheSettings { MaxItemsInCache = 5 }, new ChannelCacheSettings { MaxItemsInCache = 5 });

WorkflowApplication workflowApp1 = new WorkflowApplication(workflow);
workflowApp1.Completed = new Action<WorkflowApplicationCompletedEventArgs>(OnCompleted);
workflowApp1.Extensions.Add(sharedChannelCache);

WorkflowApplication workflowApp2 = new WorkflowApplication(workflow);
workflowApp2.Completed = new Action<WorkflowApplicationCompletedEventArgs>(OnCompleted);
workflowApp2.Extensions.Add(sharedChannelCache);

//disabling the channel cache so that channels are closed after being used.
SendMessageChannelCache disabledChannelCache = new SendMessageChannelCache(new ChannelCacheSettings { MaxItemsInCache = 0 }, new ChannelCacheSettings { MaxItemsInCache = 0 });

WorkflowApplication workflowApp3 = new WorkflowApplication(workflow);
workflowApp3.Completed = new Action<WorkflowApplicationCompletedEventArgs>(OnCompleted);
workflowApp3.Extensions.Add(disabledChannelCache);

Comentarios

Esta clase está orientada para los flujos de trabajo que envían mensajes a los extremos de servicio.This class is intended for workflows that send messages to service endpoints. Estos flujos de trabajo son normalmente flujos de trabajo del cliente pero podrían ser también servicios de flujo de trabajo que se hospedan en WorkflowServiceHost.These workflows are typically client workflows but could also be workflow services that are hosted in a WorkflowServiceHost.

De manera predeterminada, en un flujo de trabajo hospedado por WorkflowServiceHost, la memoria caché usada por las actividades de mensajería de Send se comparte en todas las instancias de flujo de trabajo en WorkflowServiceHost (el almacenamiento en caché de nivel de host).By default, in a workflow hosted by a WorkflowServiceHost, the cache used by Send messaging activities is shared across all workflow instances in the WorkflowServiceHost (host-level caching). Para un flujo de trabajo del cliente que no esté hospedado por WorkflowServiceHost, la memoria caché está solo disponible para la instancia de flujo de trabajo (almacenamiento en caché en el nivel de instancia).For a client workflow that is not hosted by a WorkflowServiceHost, the cache is available only to the workflow instance (instance-level caching). El almacenamiento en la memoria caché está deshabilitado de forma predeterminada para cualquier actividad de envío del flujo de trabajo que tenga definidos extremos en su configuración.Caching is disabled by default for any send activity in your workflow that has endpoints defined in configuration.

Para obtener más información sobre cómo cambiar los niveles de uso compartido de caché y la configuración de caché predeterminados para el generador de canales y la memoria caché del canal, consulte cambiar los niveles de uso compartido de caché para las actividades de envío.For more information about how to change the default cache sharing levels and cache settings for the channel factory and channel cache, see Changing the Cache Sharing Levels for Send Activities.

Constructores

SendMessageChannelCache()

Inicializa una nueva instancia de la clase SendMessageChannelCache con una configuración predeterminada de la memoria caché del generador y del canal.Initializes a new instance of the SendMessageChannelCache class with default factory cache and channel cache settings.

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings)

Inicializa una nueva instancia de la clase SendMessageChannelCache con una configuración personalizada de la memoria caché del generador y del canal.Initializes a new instance of the SendMessageChannelCache class with custom factory cache and channel cache settings.

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings, Boolean)

Inicializa una nueva instancia de la clase SendMessageChannelCache con una configuración personalizada de la memoria caché del generador y del canal, y un valor que indica si se debe activar el almacenamiento en la memoria caché.Initializes a new instance of the SendMessageChannelCache class with custom factory cache settings, custom channel cache settings, and a value that indicates whether to turn caching on.

Propiedades

AllowUnsafeCaching

Obtiene o establece un valor que indica si se debe activar el almacenamiento en la memoria caché.Gets or sets a value that indicates whether to turn caching on.

ChannelSettings

Obtiene o establece la configuración de la memoria caché del canal.Gets or sets the settings of the channel cache.

FactorySettings

Obtiene o establece la configuración de la memoria caché del generador de canales.Gets or sets the settings of the channel factory cache.

Métodos

Dispose()

Libera todos los recursos usados por la instancia actual de la clase SendMessageChannelCache.Releases all resources used by the current instance of the SendMessageChannelCache class.

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Heredado de Object)

Se aplica a