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에서 호스팅되지 않는 클라이언트 워크플로의 경우 워크플로 인스턴스에서만 캐시를 사용할 수 있습니다(인스턴스 수준 캐싱). 구성에 정의된 엔드포인트가 있는 워크플로의 경우 기본적으로 Send 활동에 캐싱을 사용하지 않도록 설정되어 있습니다.

기본 캐시 공유 수준 및 채널 팩터리 및 채널 캐시의 캐시 설정을 변경 하는 방법에 대 한 자세한 내용은 참조 하세요. Send 활동의 캐시 공유 수준 변경합니다.

생성자

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)

적용 대상