ServiceThrottle.MaxConcurrentSessions Egenskap

Definition

Hämtar eller anger ett värde som anger det maximala antalet sessioner som ett ServiceHost objekt kan acceptera samtidigt.

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

Egenskapsvärde

Det maximala antalet sessioner som en tjänstvärd accepterar. Standardvärdet är 100 * antal processorer i datorn.

Exempel

I följande kodexempel visas den typiska användningen av ServiceThrottle genom att referera till ServiceThrottlingBehavior i en programkonfigurationsfil. I det här fallet upprättar de värden som anges högst en meddelandebearbetning i taget från en anslutning till en InstanceContext. Verklig användning måste bestämmas genom erfarenhet.

<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>

Kommentarer

Egenskapen MaxConcurrentSessions anger det maximala antalet kanaler som kan ServiceHost accepteras. Varje lyssnarobjekt kan ha en väntande kanal som inte räknas mot värdet MaxConcurrentSessions för förrän WCF accepterar kanalen och börjar bearbeta meddelanden på den. Den här egenskapen är mest användbar i scenarier som använder sessioner.

Note

En spårning skrivs varje gång värdet för den här egenskapen överskrids. Den första spårningen skrivs som en varning.

Mer information om sessioner finns i Använda sessioner.

Vanligtvis anges den här egenskapen med hjälp av ServiceThrottlingBehavior.MaxConcurrentSessions egenskapen .

Gäller för