다음을 통해 공유


TransactedBatchingBehavior.MaxBatchSize 속성

정의

한 트랜잭션으로 일괄 처리할 수 있는 최대 받기 작업 수를 가져오거나 설정합니다.

public:
 property int MaxBatchSize { int get(); void set(int value); };
public int MaxBatchSize { get; set; }
member this.MaxBatchSize : int with get, set
Public Property MaxBatchSize As Integer

속성 값

Int32

한 트랜잭션으로 일괄 처리할 수 있는 최대 받기 작업 수입니다.

예외

MaxBatchSize 가 0보다 작습니다.

예제

다음 코드에서는 MaxBatchSize 속성을 설정하는 방법을 보여 줍니다.

ServiceEndpoint endpoint;
endpoint = serviceHost.AddServiceEndpoint(typeof(IQueueCalculator), new NetMsmqBinding(),"net.msmq://localhost/private/ServiceModelSamples");
TransactedBatchingBehavior batchBehavior = new TransactedBatchingBehavior(10);
batchBehavior.MaxBatchSize = 100;
endpoint.Behaviors.Add(new TransactedBatchingBehavior(10));

설명

maxBatchSize 값은 힌트로만 사용됩니다. maxBatchSize에 도달하기 전에 모든 메시지가 수신될 수 있습니다. 이 경우에는 다른 메시지를 받기 위해 무한정 대기하는 일이 없어야 합니다. 이를 방지 하려면 WCF 일괄 처리를 초기 커밋 하 고 추가 메시지를 수신 하는 새 일괄 처리를 엽니다. 수신할 메시지가 없고 트랜잭션 시간 제한 값의 20%가 경과하면 일괄 처리가 커밋됩니다.

적용 대상