SendMessageChannelCache Classe

Definição

Representa uma extensão que permite a personalização dos níveis de partilha de cache, as definições da cache de fábrica de canal e as definições da cache de canal para fluxos de trabalho que enviam mensagens para endpoints de serviço usando Send atividades de mensagens.

public ref class SendMessageChannelCache sealed : IDisposable
public sealed class SendMessageChannelCache : IDisposable
type SendMessageChannelCache = class
    interface IDisposable
Public NotInheritable Class SendMessageChannelCache
Implements IDisposable
Herança
SendMessageChannelCache
Implementações

Exemplos

O exemplo seguinte mostra como usar a SendMessageChannelCache classe para partilhar um cache de canal entre duas aplicações de workflow num único domínio de aplicação.


//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);

Observações

Esta classe destina-se a fluxos de trabalho que enviam mensagens para endpoints de serviço. Esses fluxos de trabalho geralmente são de cliente, mas também podem ser serviços de fluxo de trabalho hospedados numa instância de WorkflowServiceHost.

Por defeito, num fluxo de trabalho alojado por um WorkflowServiceHost, a cache usada pelas Send atividades de mensagens é partilhada entre todas as instâncias do workflow no WorkflowServiceHost (cache ao nível do host). Para um fluxo de trabalho cliente que não é hospedado por um WorkflowServiceHost, o cache está disponível apenas para a instância do fluxo de trabalho (cache no nível da instância). O cache está desativado por defeito para qualquer atividade de envio no teu fluxo de trabalho que tenha endpoints definidos na configuração.

Para mais informações sobre como alterar os níveis predefinidos de partilha de cache e as definições de cache para a fábrica de canal e a cache de canal, consulte Alterar os Níveis de Partilha de Cache para Atividades de Envio.

Construtores

Name Description
SendMessageChannelCache()

Inicializa uma nova instância da SendMessageChannelCache classe com as definições padrão de cache de fábrica e cache de canal.

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings, Boolean)

Inicializa uma nova instância da SendMessageChannelCache classe com definições de cache de fábrica personalizadas, definições de cache de canal personalizadas e um valor que indica se deve ativar a cache.

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings)

Inicializa uma nova instância da SendMessageChannelCache classe com definições personalizadas de cache de fábrica e cache de canal.

Propriedades

Name Description
AllowUnsafeCaching

Recebe ou define um valor que indica se deve ativar a cache (cache).

ChannelSettings

Obtém ou define as definições da cache do canal.

FactorySettings

Obtém ou define as definições do cache de fábrica do canal.

Métodos

Name Description
Dispose()

Liberta todos os recursos usados pela instância atual da SendMessageChannelCache classe.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)

Aplica-se a