(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

ObjectPoolingAttribute-Klasse

Aktiviert und konfiguriert Objektpooling für eine Komponente. Diese Klasse kann nicht vererbt werden.

System.Object
  System.Attribute
    System.EnterpriseServices.ObjectPoolingAttribute

Namespace:  System.EnterpriseServices
Assembly:  System.EnterpriseServices (in System.EnterpriseServices.dll)

[ComVisibleAttribute(false)]
[AttributeUsageAttribute(AttributeTargets.Class, Inherited = true)]
public sealed class ObjectPoolingAttribute : Attribute

Der ObjectPoolingAttribute-Typ macht die folgenden Member verfügbar.

  NameBeschreibung
Öffentliche MethodeObjectPoolingAttribute()Initialisiert eine neue Instanz der ObjectPoolingAttribute-Klasse und legt die Enabled-Eigenschaft, die MaxPoolSize-Eigenschaft, die MinPoolSize-Eigenschaft und die CreationTimeout-Eigenschaft auf die jeweiligen Standardwerte fest.
Öffentliche MethodeObjectPoolingAttribute(Boolean)Initialisiert eine neue Instanz der ObjectPoolingAttribute-Klasse und legt die Enabled-Eigenschaft fest.
Öffentliche MethodeObjectPoolingAttribute(Int32, Int32)Initialisiert eine neue Instanz der ObjectPoolingAttribute-Klasse und legt die MaxPoolSize-Eigenschaft und die MinPoolSize-Eigenschaft fest.
Öffentliche MethodeObjectPoolingAttribute(Boolean, Int32, Int32)Initialisiert eine neue Instanz der ObjectPoolingAttribute-Klasse und legt die Enabled-Eigenschaft, die MaxPoolSize-Eigenschaft und die MinPoolSize-Eigenschaft fest.
Zum Seitenanfang

  NameBeschreibung
Öffentliche EigenschaftCreationTimeoutRuft die Zeitdauer ab, die gewartet werden soll, bis ein Objekt im Pool verfügbar wird, bevor eine Ausnahme ausgelöst wird, oder legt diese fest. Dieser Wert wird in Millisekunden angegeben.
Öffentliche EigenschaftEnabledRuft einen Wert ab, der angibt, ob Objektpooling aktiviert ist, oder legt diesen fest.
Öffentliche EigenschaftMaxPoolSizeRuft den Wert für die maximale Poolgröße ab oder legt diesen fest.
Öffentliche EigenschaftMinPoolSizeRuft den Wert für die minimale Poolgröße ab oder legt diesen fest.
Öffentliche EigenschaftTypeIdBei Implementierung in einer abgeleiteten Klasse wird ein eindeutiger Bezeichner für dieses Attribute abgerufen. (Von Attribute geerbt.)
Zum Seitenanfang

  NameBeschreibung
Öffentliche MethodeAfterSaveChangesInfrastruktur. Wird intern von der .NET Framework-Infrastruktur beim Installieren und Konfigurieren von Assemblys im COM+-Katalog aufgerufen.
Öffentliche MethodeApplyInfrastruktur. Wird intern von der .NET Framework-Infrastruktur beim Anwenden des ObjectPoolingAttribute-Klassenattributs auf eine Serviced Component aufgerufen.
Öffentliche MethodeEqualsInfrastruktur. Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist. (Von Attribute geerbt.)
Öffentliche MethodeGetHashCodeGibt den Hashcode für diese Instanz zurück. (Von Attribute geerbt.)
Öffentliche MethodeGetTypeRuft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Öffentliche MethodeIsDefaultAttributeBeim Überschreiben in einer abgeleiteten Klasse wird angegeben, ob der Wert dieser Instanz der Standardwert für die abgeleitete Klasse ist. (Von Attribute geerbt.)
Öffentliche MethodeIsValidTargetInfrastruktur. Wird intern von der .NET Framework-Infrastruktur beim Installieren und Konfigurieren von Assemblys im COM+-Katalog aufgerufen.
Öffentliche MethodeMatchBeim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht. (Von Attribute geerbt.)
Öffentliche MethodeToStringGibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.)
Zum Seitenanfang

  NameBeschreibung
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetIDsOfNamesOrdnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu. (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetTypeInfoRuft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können. (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetTypeInfoCountRuft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1). (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.InvokeStellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit. (Von Attribute geerbt.)
Zum Seitenanfang

Wenn Objektpooling angegeben ist, darf es im COM+-Katalog nicht deaktiviert sein, und wenn es im COM+-Katalog aktiviert ist, muss es für die Komponente angegeben sein.

Eine Liste der anfänglichen Eigenschaftswerte für eine Instanz von ObjectPoolingAttribute finden Sie unter ObjectPoolingAttribute-Konstruktor.

Weitere Informationen zum Verwenden von Attributen finden Sie unter Erweitern von Metadaten mithilfe von Attributen.

Im folgenden Codebeispiel wird die Verwendung dieses Attributs veranschaulicht.


using System;
using System.EnterpriseServices;
using System.Windows.Forms;

[assembly: ApplicationName("ObjectInspector")]
[assembly: ApplicationActivation(ActivationOption.Server)]
[assembly: System.Reflection.AssemblyKeyFile("Inspector.snk")]

[JustInTimeActivation]
[ObjectPooling(MinPoolSize=2, MaxPoolSize=100, CreationTimeout=1000)]
public class ObjectInspector : ServicedComponent
{

    public string IdentifyObject (Object obj)
    {
        // Return this object to the pool after use.
        ContextUtil.DeactivateOnReturn = true;

        // Get the supplied object's type.        
        Type objType = obj.GetType();

        // Return its name.
        return(objType.FullName);

    }

    protected override void Activate()
    {
        MessageBox.Show( String.Format("Now entering...\nApplication: {0}\nInstance: {1}\nContext: {2}\n",
                                       ContextUtil.ApplicationId.ToString(), ContextUtil.ApplicationInstanceId.ToString(),
                                       ContextUtil.ContextId.ToString() ) );
    }

    protected override void Deactivate()
    {
        MessageBox.Show("Bye Bye!");
    }

    // This object can be pooled.
    protected override bool CanBePooled()
    {
        return(true);
    }

}


.NET Framework

Unterstützt in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft