と という名前の 2 つのクラスがParent
ありChild
ます。クラスには、クラスParent
への参照が含まれていますChild
。Parent
クラスのインスタンスを作成するときに、Child
オブジェクトのインスタンスを渡します。
私の知る限り、このChild
インスタンスを参照として渡します。次に、このParent
オブジェクトを外部キャッシュにキャッシュします。次に、このオブジェクトを別のシステムから取得します。Child
そのシステムでは、オブジェクトのインスタンスが存在しない可能性があると思います。
理論によると、「_child」には実際のオブジェクトではなく、ヒープ内のオブジェクトの参照が含まれていますか?
サーバー ファームのシナリオで考えてみてください。オブジェクト インスタンスは他のシステムで使用可能であり、システムはそのオブジェクトを生成した後です。
public class Parent
{
public Child _child = null;
public Parent(Child c)
{
_child=c;
}
}
public class Child
{
public string Name;
}
static void Main()
{
Child c = new Child();
c.Name="vivek";
Parent p = Parent(c);
string key = ExternalCache.Add(p);
}
Parent
別のシステムまたはアプリケーションでこのオブジェクトを取得しようとするとどうなりますか?
static void Main()
{
Parent p = (Parent)ExternalCache.Get(Key)
Console.WriteLine(p._child.Name);
}