SendMessageChannelCache 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
代表一個擴充功能,允許自訂快取共享層級、通道出廠快取設定,以及通道快取設定,以支援透過 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裝載的用戶端工作流程,快取僅適用於工作流程實例(實例層級快取)。 預設情況下,工作流程中任何有端點定義的發送活動都關閉快取。
如需更多關於如何更改通道出廠與通道快取的預設快取共享等級及快取設定的資訊,請參閱 「變更傳送活動的快取共享等級」。
建構函式
| 名稱 | Description |
|---|---|
| SendMessageChannelCache() |
初始化類別的新實例 SendMessageChannelCache ,使用預設的出廠快取與通道快取設定。 |
| SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings, Boolean) |
初始化類別的新實例 SendMessageChannelCache ,包含自訂出廠快取設定、自訂通道快取設定,以及指示是否開啟快取的值。 |
| SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings) |
初始化類別的新實例 SendMessageChannelCache ,並使用自訂的工廠快取與通道快取設定。 |
屬性
| 名稱 | Description |
|---|---|
| AllowUnsafeCaching |
取得或設定一個值,指示是否開啟快取。 |
| ChannelSettings |
取得或設定頻道快取的設定。 |
| FactorySettings |
取得或設定頻道出廠快取的設定。 |
方法
| 名稱 | Description |
|---|---|
| Dispose() |
釋放目前類別實例 SendMessageChannelCache 所使用的所有資源。 |
| Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
| GetHashCode() |
做為預設哈希函式。 (繼承來源 Object) |
| GetType() |
取得目前實例的 Type。 (繼承來源 Object) |
| MemberwiseClone() |
建立目前 Object的淺層複本。 (繼承來源 Object) |
| ToString() |
傳回表示目前 物件的字串。 (繼承來源 Object) |