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, Boolean) |
Инициализирует новый экземпляр класса с параметрами пользовательского кэша фабрики, параметрами пользовательского SendMessageChannelCache кэша каналов и значением, указывающим, следует ли включать кэширование. |
| SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings) |
Инициализирует новый экземпляр SendMessageChannelCache класса с пользовательскими параметрами кэша фабрики и кэша каналов. |
Свойства
| Имя | Описание |
|---|---|
| AllowUnsafeCaching |
Возвращает или задает значение, указывающее, следует ли включать кэширование. |
| ChannelSettings |
Возвращает или задает параметры кэша каналов. |
| FactorySettings |
Возвращает или задает параметры кэша фабрики каналов. |
Методы
| Имя | Описание |
|---|---|
| Dispose() |
Освобождает все ресурсы, используемые текущим экземпляром класса SendMessageChannelCache. |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |