SendMessageChannelCache Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa uma extensão que permite a personalização dos níveis de compartilhamento de cache, as configurações do cache de fábrica de canais e as configurações do cache de canal para fluxos de trabalho que enviam mensagens para pontos de extremidade 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 a seguir mostra como usar a SendMessageChannelCache classe para compartilhar um cache de canal entre dois aplicativos de fluxo de trabalho em um único domínio de aplicativo.
//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);
Comentários
Essa classe destina-se a fluxos de trabalho que enviam mensagens para pontos de extremidade de serviço. Esses fluxos de trabalho normalmente são fluxos de trabalho do cliente, mas também podem ser serviços de fluxo de trabalho hospedados em um WorkflowServiceHost.
Por padrão, em um fluxo de trabalho hospedado por um WorkflowServiceHost, o cache usado pelas Send atividades de mensagens é compartilhado em todas as instâncias de fluxo de trabalho no (cache no nível do WorkflowServiceHost host). Para um fluxo de trabalho do 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 é desabilitado por padrão para qualquer atividade de envio no fluxo de trabalho que tenha pontos de extremidade definidos na configuração.
Para obter mais informações sobre como alterar os níveis de compartilhamento de cache padrão e as configurações de cache para a fábrica de canais e o cache de canal, consulte Alterando os níveis de compartilhamento de cache para atividades de envio.
Construtores
| Nome | Description |
|---|---|
| SendMessageChannelCache() |
Inicializa uma nova instância da classe com configurações SendMessageChannelCache padrão de cache de fábrica e cache de canal. |
| SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings, Boolean) |
Inicializa uma nova instância da classe com configurações personalizadas de SendMessageChannelCache cache de fábrica, configurações de cache de canal personalizado e um valor que indica se o cache deve ser ativado. |
| SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings) |
Inicializa uma nova instância da SendMessageChannelCache classe com configurações personalizadas de cache de fábrica e cache de canal. |
Propriedades
| Nome | Description |
|---|---|
| AllowUnsafeCaching |
Obtém ou define um valor que indica se o cache deve ser ativado. |
| ChannelSettings |
Obtém ou define as configurações do cache de canal. |
| FactorySettings |
Obtém ou define as configurações do cache de fábrica de canais. |
Métodos
| Nome | Description |
|---|---|
| Dispose() |
Libera 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 a função hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (Herdado de Object) |
| ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |