ServiceThrottlingBehavior.MaxConcurrentCalls Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera lub ustawia wartość określającą maksymalną liczbę komunikatów aktywnie przetwarzanych w obiekcie ServiceHost.
public:
property int MaxConcurrentCalls { int get(); void set(int value); };
public int MaxConcurrentCalls { get; set; }
member this.MaxConcurrentCalls : int with get, set
Public Property MaxConcurrentCalls As Integer
Wartość właściwości
Górny limit aktywnych komunikatów w usłudze. Wartość domyślna to 16 razy więcej niż liczba procesorów.
Przykłady
Poniższy przykład kodu przedstawia użycie z ServiceThrottlingBehavior pliku konfiguracji aplikacji, który ustawia MaxConcurrentSessionswłaściwości , MaxConcurrentCallsi MaxConcurrentInstances na wartość 1 jako przykład. Środowisko rzeczywiste określa, jakie są optymalne ustawienia dla każdej konkretnej aplikacji.
<configuration>
<appSettings>
<!-- use appSetting to configure base address provided by host -->
<add key="baseAddress" value="http://localhost:8080/ServiceMetadata" />
</appSettings>
<system.serviceModel>
<services>
<service
name="Microsoft.WCF.Documentation.SampleService"
behaviorConfiguration="Throttled" >
<host>
<baseAddresses>
<add baseAddress="http://localhost:8080/SampleService"/>
</baseAddresses>
</host>
<endpoint
address=""
binding="wsHttpBinding"
contract="Microsoft.WCF.Documentation.ISampleService"
/>
<endpoint
address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange"
/>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="Throttled">
<serviceThrottling
maxConcurrentCalls="1"
maxConcurrentSessions="1"
maxConcurrentInstances="1"
/>
<serviceMetadata
httpGetEnabled="true"
httpGetUrl=""
/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
Uwagi
Właściwość MaxConcurrentCalls określa maksymalną liczbę komunikatów aktywnie przetwarzanych w ServiceHost obiekcie. Każdy kanał może mieć jeden oczekujący komunikat, który nie jest liczone względem wartości, MaxConcurrentCalls dopóki program Windows Communication Foundation (WCF) nie zacznie go przetwarzać.
Można również ustawić wartości tego atrybutu przy użyciu <elementu serviceThrottling> w pliku konfiguracji aplikacji.
Ostrzeżenie
MaxConcurrentCalls powinna być ustawiona na mniejszą niż rozmiar puli połączeń SQL w scenariuszach w kolejce.