SendMessageChannelCache Класс

Определение

Представляет расширение, которое позволяет изменить уровни доступа к кэшу, параметры кэша фабрики каналов и кэша канала для рабочих процессов, направляющих сообщения в конечные точки службы с использованием действий отправки сообщений 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
Наследование
SendMessageChannelCache
Реализации

Примеры

В следующем примере показано, как использовать класс SendMessageChannelCache для совместного доступа к каналу со стороны двух приложений рабочего процесса в одном домене приложений.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);

Комментарии

Этот класс предназначен для рабочих процессов, отправляющих сообщения в конечные точки служб.This class is intended for workflows that send messages to service endpoints. Эти рабочие процессы обычно являются клиентскими, но также могут быть службами рабочих процессов, размещенными в WorkflowServiceHost.These workflows are typically client workflows but could also be workflow services that are hosted in a WorkflowServiceHost.

По умолчанию в рабочем процессе, размещенном в WorkflowServiceHost, кэш, используемый действиями обмена сообщениями Send, совместно используется всеми экземплярами рабочих процессов в WorkflowServiceHost (кэширование уровня узла).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). Для клиентского рабочего процесса, не размещенного в WorkflowServiceHost, кэш доступен только для экземпляра рабочего процесса (кэширование уровня экземпляра).For a client workflow that is not hosted by a WorkflowServiceHost, the cache is available only to the workflow instance (instance-level caching). По умолчанию кэширование отключено для всех действий отправки в рабочем процессе, в конфигурации которого определены конечные точки.Caching is disabled by default for any send activity in your workflow that has endpoints defined in configuration.

Дополнительные сведения о том, как изменить уровни общего доступа к кэшу по умолчанию и параметры кэша для фабрики каналов и кэша каналов, см. в разделе изменение уровней общего доступа к кэшу для действий отправки.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.

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

SendMessageChannelCache()

Инициализирует новый экземпляр класса SendMessageChannelCache кэшем фабрики по умолчанию и параметрами кэша канала.Initializes a new instance of the SendMessageChannelCache class with default factory cache and channel cache settings.

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings)

Инициализирует новый экземпляр класса SendMessageChannelCache кэшем пользовательской фабрики и параметрами кэша канала.Initializes a new instance of the SendMessageChannelCache class with custom factory cache and channel cache settings.

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings, Boolean)

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

Свойства

AllowUnsafeCaching

Возвращает или задает значение, указывающее, требуется ли включить кэширование.Gets or sets a value that indicates whether to turn caching on.

ChannelSettings

Возвращает или задает параметры кэша канала.Gets or sets the settings of the channel cache.

FactorySettings

Возвращает или задает параметры кэша фабрики каналов.Gets or sets the settings of the channel factory cache.

Методы

Dispose()

Освобождает все ресурсы, используемые текущим экземпляром класса SendMessageChannelCache.Releases all resources used by the current instance of the SendMessageChannelCache class.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.Determines whether the specified object is equal to the current object.

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

Служит хэш-функцией по умолчанию.Serves as the default hash function.

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

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

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

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

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

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

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

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