ServiceThrottle.MaxConcurrentInstances Proprietà

Definizione

Ottiene o imposta il numero massimo di oggetti del servizio che possono essere eseguiti contemporaneamente.Gets or sets the maximum number of service objects that can execute at one time.

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

Valore della proprietà

Il numero massimo di oggetti InstanceContext presenti contemporaneamente nel servizio.The maximum number of InstanceContext objects in the service at one time. L'impostazione predefinita è numero massimo di chiamate simultanee + numero massimo di sessioni simultanee.The default is Maximum Concurrent Calls + Maximum Concurrent Sessions.

Esempi

Nell'esempio di codice seguente viene illustrato l'utilizzo tipico della classe ServiceThrottle facendo riferimento al ServiceThrottlingBehavior in un file di configurazione dell'applicazione.The following code example shows the typical use of the ServiceThrottle by referencing the ServiceThrottlingBehavior in an application configuration file. In questo caso, i valori specificati stabiliscono, al massimo, un'elaborazione di messaggi per volta da una connessione a un elemento InstanceContext.In this case, the values that are specified establish, at most, one message processing at one time from one connection to one InstanceContext. L'utilizzo realistico deve essere determinato tramite l'esperienza.Real-world usage must be determined through experience.

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

Commenti

La proprietà MaxConcurrentInstances specifica il numero massimo di oggetti InstanceContext nel servizio.The MaxConcurrentInstances property specifies the maximum number of InstanceContext objects in the service. È importante tenere presente la relazione tra la proprietà MaxConcurrentInstances e la proprietà InstanceContextMode.It is important to keep in mind the relationship between the MaxConcurrentInstances property and the InstanceContextMode property. Se InstanceContextMode èPerSession il valore risultante è il numero totale di sessioni.If InstanceContextMode is PerSession the resulting value is the total number of sessions. Se InstanceContextMode è PerCall il valore risultante è il numero di chiamate simultanee.If InstanceContextMode is PerCall, the resulting value is the number of concurrent calls. Se un messaggio arriva quando il numero massimo di oggetti InstanceContext è già stato impostato, il messaggio viene messo in attesa fino a che un oggetto InstanceContext viene chiuso.If a message arrives while the maximum number of InstanceContext objects already exist, the message is held until an InstanceContext object closes.

Nota

Viene scritta una traccia ogni volta che il valore di questa proprietà viene superato.A trace is written every time the value of this property is exceeded. La prima traccia viene scritta come un avviso.The first trace is written as a warning.

Si applica a