Поделиться через


SendMessageChannelCache Класс

Определение

Представляет расширение, которое позволяет изменить уровни доступа к кэшу, параметры кэша фабрики каналов и кэша канала для рабочих процессов, направляющих сообщения в конечные точки службы с использованием действий отправки сообщений Send.

public ref class SendMessageChannelCache sealed : IDisposable
public sealed class SendMessageChannelCache : IDisposable
type SendMessageChannelCache = class
    interface IDisposable
Public NotInheritable Class SendMessageChannelCache
Implements IDisposable
Наследование
SendMessageChannelCache
Реализации

Примеры

В следующем примере показано, как использовать класс SendMessageChannelCache для совместного доступа к каналу со стороны двух приложений рабочего процесса в одном домене приложений.


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

Комментарии

Этот класс предназначен для рабочих процессов, отправляющих сообщения в конечные точки служб. Эти рабочие процессы обычно являются клиентскими, но также могут быть службами рабочих процессов, размещенными в WorkflowServiceHost.

По умолчанию в рабочем процессе, размещенном в WorkflowServiceHost, кэш, используемый действиями обмена сообщениями Send, совместно используется всеми экземплярами рабочих процессов в WorkflowServiceHost (кэширование уровня узла). Для клиентского рабочего процесса, не размещенного в WorkflowServiceHost, кэш доступен только для экземпляра рабочего процесса (кэширование уровня экземпляра). По умолчанию кэширование отключено для всех действий отправки в рабочем процессе, в конфигурации которого определены конечные точки.

Дополнительные сведения об изменении уровней общего доступа к кэшу по умолчанию и параметров кэша для фабрики каналов и кэша каналов см. в разделе Изменение уровней общего доступа к кэшу для действий отправки.

Конструкторы

SendMessageChannelCache()

Инициализирует новый экземпляр класса SendMessageChannelCache кэшем фабрики по умолчанию и параметрами кэша канала.

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings)

Инициализирует новый экземпляр класса SendMessageChannelCache кэшем пользовательской фабрики и параметрами кэша канала.

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings, Boolean)

Инициализирует новый экземпляр класса SendMessageChannelCache параметрами кэша пользовательской фабрики, параметрами кэша пользовательского канала и значением, указывающим, следует ли включать кэширование.

Свойства

AllowUnsafeCaching

Возвращает или задает значение, указывающее, требуется ли включить кэширование.

ChannelSettings

Возвращает или задает параметры кэша канала.

FactorySettings

Возвращает или задает параметры кэша фабрики каналов.

Методы

Dispose()

Освобождает все ресурсы, используемые текущим экземпляром класса SendMessageChannelCache.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Применяется к