ObjectPoolingAttribute Klasa

Definicja

Włącza i konfiguruje buforowanie obiektów dla składnika. Klasa ta nie może być dziedziczona.

[System.AttributeUsage(System.AttributeTargets.Class, Inherited=true)]
[System.Runtime.InteropServices.ComVisible(false)]
public sealed class ObjectPoolingAttribute : Attribute
Dziedziczenie
ObjectPoolingAttribute
Atrybuty

Przykłady

Poniższy przykład kodu przedstawia użycie tego atrybutu.

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);
    }
}

Uwagi

Jeśli określono pulę obiektów, nie można jej wyłączyć w wykazie MODELU COM+; jeśli jest włączona w wykazie COM+, musi zostać określona w składniku.

Aby uzyskać listę początkowych wartości właściwości dla wystąpienia programu ObjectPoolingAttribute, zobacz ObjectPoolingAttribute konstruktor.

Aby uzyskać więcej informacji na temat używania atrybutów, zobacz Atrybuty.

Konstruktory

ObjectPoolingAttribute()

Inicjuje ObjectPoolingAttribute nowe wystąpienie klasy i ustawia Enabledwłaściwości , MaxPoolSize, MinPoolSizei CreationTimeout na wartości domyślne.

ObjectPoolingAttribute(Boolean)

Inicjuje ObjectPoolingAttribute nowe wystąpienie klasy i ustawia Enabled właściwość .

ObjectPoolingAttribute(Boolean, Int32, Int32)

Inicjuje ObjectPoolingAttribute nowe wystąpienie klasy i ustawia Enabledwłaściwości , MaxPoolSizei MinPoolSize .

ObjectPoolingAttribute(Int32, Int32)

Inicjuje ObjectPoolingAttribute nowe wystąpienie klasy i ustawia MaxPoolSize właściwości i MinPoolSize .

Właściwości

CreationTimeout

Pobiera lub ustawia czas oczekiwania na udostępnienie obiektu w puli przed zgłoszeniem wyjątku. Ta wartość jest wyrażona w milisekundach.

Enabled

Pobiera lub ustawia wartość wskazującą, czy pula obiektów jest włączona.

MaxPoolSize

Pobiera lub ustawia wartość maksymalnego rozmiaru puli.

MinPoolSize

Pobiera lub ustawia wartość minimalnego rozmiaru puli.

TypeId

Po zaimplementowaniu w klasie pochodnej pobiera unikatowy identyfikator dla tego elementu Attribute.

(Odziedziczone po Attribute)

Metody

AfterSaveChanges(Hashtable)

Wywoływana wewnętrznie przez infrastrukturę .NET Framework podczas instalowania i konfigurowania zestawów w katalogu COM+.

Apply(Hashtable)

Wywoływana wewnętrznie przez infrastrukturę .NET Framework podczas stosowania atrybutu ObjectPoolingAttribute klasy do składnika usługi.

Equals(Object)

Zwraca wartość wskazującą, czy to wystąpienie jest równe podanemu obiektowi.

(Odziedziczone po Attribute)
GetHashCode()

Zwraca wartość skrótu dla tego wystąpienia.

(Odziedziczone po Attribute)
GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
IsDefaultAttribute()

W przypadku zastąpienia w klasie pochodnej wskazuje, czy wartość tego wystąpienia jest wartością domyślną klasy pochodnej.

(Odziedziczone po Attribute)
IsValidTarget(String)

Wywoływana wewnętrznie przez infrastrukturę .NET Framework podczas instalowania i konfigurowania zestawów w katalogu COM+.

Match(Object)

W przypadku zastąpienia w klasie pochodnej zwraca wartość wskazującą, czy to wystąpienie jest równe określonemu obiektowi.

(Odziedziczone po Attribute)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Jawne implementacje interfejsu

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Zestaw nazw jest mapowany na odpowiedni zestaw identyfikatorów wysyłania.

(Odziedziczone po Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Pobiera informacje o typie obiektu, którego można użyć do pobrania informacji o typie interfejsu.

(Odziedziczone po Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Pobiera informację o liczbie typów interfejsów, jakie zawiera obiekt (0 lub 1).

(Odziedziczone po Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Umożliwia dostęp do właściwości i metod udostępnianych przez obiekt.

(Odziedziczone po Attribute)

Dotyczy

Produkt Wersje
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1