ObjectPoolingAttribute クラスとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > ObjectPoolingAttribute クラスの意味・解説 

ObjectPoolingAttribute クラス

コンポーネントオブジェクト プーリング有効にして構成します。このクラス継承できません。

名前空間: System.EnterpriseServices
アセンブリ: System.EnterpriseServices (system.enterpriseservices.dll 内)
構文構文

<ComVisibleAttribute(False)> _
<AttributeUsageAttribute(AttributeTargets.Class, Inherited:=True)> _
Public NotInheritable Class
 ObjectPoolingAttribute
    Inherits Attribute
Dim instance As ObjectPoolingAttribute
[ComVisibleAttribute(false)] 
[AttributeUsageAttribute(AttributeTargets.Class, Inherited=true)]
 
public sealed class ObjectPoolingAttribute
 : Attribute
[ComVisibleAttribute(false)] 
[AttributeUsageAttribute(AttributeTargets::Class, Inherited=true)]
 
public ref class ObjectPoolingAttribute sealed
 : public Attribute
/** @attribute ComVisibleAttribute(false) */ 
/** @attribute AttributeUsageAttribute(AttributeTargets.Class, Inherited=true)
 */ 
public final class ObjectPoolingAttribute extends
 Attribute
ComVisibleAttribute(false) 
AttributeUsageAttribute(AttributeTargets.Class, Inherited=true)
 
public final class ObjectPoolingAttribute extends
 Attribute
解説解説
使用例使用例

この属性使用方法コード例次に示します

Imports System
Imports System.EnterpriseServices
Imports 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
    Inherits ServicedComponent
    
    
    Public Function IdentifyObject(ByVal
 obj As [Object]) As String
 
        ' Return this object to the pool after use.
        ContextUtil.DeactivateOnReturn = True
        
        ' Get the supplied object's type.        
        Dim objType As Type = obj.GetType()
        
        ' Return its name.
        Return objType.FullName
    
    End Function 'IdentifyObject

    Protected Overrides Sub
 Activate() 
        MessageBox.Show(String.Format("Now
 entering..." + vbLf + "Application: {0}"
 + vbLf + "Instance: {1}" + vbLf + "Context: {2}" + vbLf, ContextUtil.ApplicationId.ToString(), ContextUtil.ApplicationInstanceId.ToString(),
 ContextUtil.ContextId.ToString()))
    
    End Sub 'Activate

    Protected Overrides Sub
 Deactivate() 
        MessageBox.Show("Bye Bye!")
    
    End Sub 'Deactivate

    ' This object can be pooled.
    Protected Overrides Function
 CanBePooled() As Boolean 
        Return True
    
    End Function 'CanBePooled

End Class 'ObjectInspector
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);
    }

}
#using <System.Windows.Forms.dll>
#using <System.Transactions.dll>
#using <System.EnterpriseServices.dll>

using namespace System;
using namespace System::EnterpriseServices;
using namespace 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 ref class ObjectInspector: public
 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:
   virtual void Activate() override
   {
      MessageBox::Show( String::Format( "Now entering...\nApplication: {0}\nInstance:
 {1}\nContext: {2}\n", ContextUtil::ApplicationId.ToString(), ContextUtil::ApplicationInstanceId.ToString(),
 ContextUtil::ContextId.ToString() ) );
   }

   virtual void Deactivate() override
   {
      MessageBox::Show( "Bye Bye!" );
   }

   // This object can be pooled.
   virtual bool CanBePooled() override
   {
      return (true);
   }
};
import System.*;
import System.EnterpriseServices.*;
import System.Windows.Forms.*;

/** @assembly ApplicationName("ObjectInspector")
 */
/** @assembly ApplicationActivation(ActivationOption.Server)
 */
/** @assembly System.Reflection.AssemblyKeyFile("Inspector.snk")
 */

/** @attribute JustInTimeActivation()
 */
/** @attribute ObjectPooling(MinPoolSize = 2, MaxPoolSize = 100, 
    CreationTimeout = 1000)
 */
public class ObjectInspector extends ServicedComponent
{
    public String IdentifyObject(Object obj)
    {
        // Return this object to the pool after use.
        ContextUtil.set_DeactivateOnReturn(true);
        // Get the supplied object's type.        
        Type objType = obj.GetType();
        // Return its name.
        return objType.get_FullName();
    } //IdentifyObject

    protected void Activate()
    {
        MessageBox.Show(String.Format("Now entering...\nApplication: {0}\n"
            + "Instance: {1}\nContext: {2}\n",
            ContextUtil.get_ApplicationId().ToString(),
            ContextUtil.get_ApplicationInstanceId().ToString(),
            ContextUtil.get_ContextId().ToString()));
    } //Activate

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

    // This object can be pooled.
    protected boolean CanBePooled()
    {
        return true;
    } //CanBePooled
} //ObjectInspector 
継承階層継承階層
System.Object
   System.Attribute
    System.EnterpriseServices.ObjectPoolingAttribute
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照


このページでは「.NET Framework クラス ライブラリ リファレンス」からObjectPoolingAttribute クラスを検索した結果を表示しています。
Weblioに収録されているすべての辞書からObjectPoolingAttribute クラスを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からObjectPoolingAttribute クラス を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「ObjectPoolingAttribute クラス」の関連用語

ObjectPoolingAttribute クラスのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



ObjectPoolingAttribute クラスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS